alias
コピペです
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- -
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
コマンド等にエイリアス(別名)をつけることができます。長くて面倒くさいよく使用するコマンドの入力が楽になるかもしれません。
alias エイリアス名="文字列(コマンド等)"
パッケージの確認コマンドを楽にする別名をつけます。
#alias rg="rpm -qa | grep"
とすることでいままで
#rpm -qa | grep namazu
と実行していたものが
#rg namazu
と簡単になります。
既存コマンドと一緒の名前を付けた場合、既存コマンドを実行するときはコマンドの前に"/"を付加することで既存コマンドを実行できます。
全てのエイリアス設定を表示するには alias コマンドを使用します。
#alias alias cp='cp -i' alias l.='ls -d .* --color=tty' alias ll='ls -l --color=tty' alias ls='ls --color=tty' alias mv='mv -i' alias rm='rm -i' alias which='alias | /usr/bin/which --tty-only --read-alias --show-dot --show-tilde'
エイリアスを無効にするには unalias コマンドを使用します。
unalias エイリアス名
先ほど作成したエイリアスrgを削除するには
#unalias rg
とします。
毎回そのエイリアスを使用するのであれば、ホームディレクトリ内の.bachrcにエイリアス設定を記述することでシェル起動時に自動的に設定されます。
http://cyberam.dip.jp/linux_command/bash/bash_main.html
at
時間を指定してプログラムを実行する。
http://d.hatena.ne.jp/hogem/20100122/1264173082
http://cmd-pro.com/m_timer.html
例えば、今から3時間ごとにファイルの同期を行いたかったら。
#!/bin/bash -f for time in 3 6 9 12 do echo "rsync -auvzb /home/hoge/ /home/work/hoge" | at now + ${time} hours done
などとする。
macではデフォルトでは動作しないようになっている模様。以下のようにすることで機能を有効化できる。
> sudo launchctl load -w /System/Library/LaunchDaemons/com.apple.atrun.plist
bc
ターミナル上で簡単な計算ができる。
> bc -l
- lで標準数学ライブラリ(sinとかcosとか)のが使えるらしい。
s (x): sin (x の単位はラジアン)
c (x): cos (x の単位はラジアン)
a (x): atan (返り値の単位はラジアン)
l (x): log (自然対数)
e (x): exp (指数関数)
j (n,x): 整数 n 次のベッセル関数
やめるときは
> quit
2010/07/05
新しい関数を定義するときは.bashrcなどに
export BC_ENV_ARGS="-l ${HOME}/.bc"
という項目を追加して、ホームディレクトリに.bcというファイルを作って
define log(x) {return l(x) / l(10);}
と定義でもしておけば便利かも。
http://www.mlb.co.jp/linux/science/bc/index.html
crontab
定期的にコマンドを実行する
http://tech.bayashi.net/svr/doc/cron.html
http://www.server-memo.net/tips/crontab.html
crontabの内容を編集
crontab -e
内容を表示
crontab -l
入力コマンドテンプレートは
* * * * * [コマンド]
印は左から「分」「時」「日」「月」「曜日」を表す。
例えば、自分が行っているものを例として
00 0-23/3 * * * rsync -auvzb /hoge/ /hoge/hoge/ :3時間後とにrsyncを実行
C-Z+bg
フォアグラウンドで起動しているジョブをバックグラウンドに持っていく方法。
>C-z(サスペンド) >bg
dpkg
apt-getでインストールしたパッケージの場所を教えてくれる。
dpkg -L (パッケージ名)
ln
シンボリックリンクです。いかにもそこにディレクトリがあるみたいな、いわばWindowsでショートカットで作成したようなもの。実体は別のところにあるってやつ。
まずシンボリックリンクする場所に移動
cd /export/home/usr1
で、以下のコマンドを実行
ln -s /export/home/usr1/test test2
この例だと/export/home/usr1配下にtestってのがあって、同じ階層にtest2ってのが出来ます。で
cd /export/home/usr1/test2 ||<ってチェンジディレクトリするとtestの中に入ってます。 ディレクトリ例ですがファイルも同じ。 シンボリックリンク外し 上記シンボリックリンクを外す場合は普通に削除します。 >|| rm /export/home/usr1/test2
削除しないかぎり、電源落としたり、リブートしてもシンボリックリンク解除されません。
コピペです-------------------
http://homepage1.nifty.com/clotho/comp/sun/unix_command.htm
man
manに説明文を追加する
http://www.usupi.org/sysad/047.html
mount
コピペです
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- -
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
具体的には、ホームディレクトリをカレントにした状態から「mkdir work」と入力実行して、マウントするディレクトリを作成する。
次に「mount -b c:\\usr\\work /home/kaz/work」と入力実行する。これだけでOKだ。
ご覧の様にWindows上のワークディレクトリが/home/kaz/workとしてマウントされるので、ここからテキスト処理を行ったり、ファイルのやりとりを行うことができる
http://journal.mycom.co.jp/special/2002/cygwin/012.html
nohup
ssh先でスクリプトを走らせる時にログアウト後も実行し続ける
nohup ./hogehoge.sh &
スクリプトを走らせて途中でnohupをしたいとき。まずC-zとbgでバックグラウンドで走らせて、jobsでバックグラウンドジョブの番号を確認したのち
disown %1
(job番号が1の時)。とすればログアウト後をプログラムを実行できる。
2011-05-23
idlのスクリプトを流しっぱなしにしてたら、自動終了せず起動しっぱなしになってしまい、ライセンスを独占状態になってしまった。これを回避するために以下の行動をとった。
ps -axu | grep [username]
-axで端末に接続している他のユーザーのプロセスも確認できる。-uをつけることで詳細な情報を得ることが可能。ここで自分のusernameと異常に長く続いているプログラムのPIDを確認。
kill [PID]
でそのプロセスを殺すと、ライセンスが解放された。あー、焦った。
visudo
他のユーザーに権限を与える。
suに-をつけてスーパーユーザーになることでvisudoが使えるようになる。
suだとログイン時のユーザーの環境設定を引き継ぐ。
su -だとrootの環境設定を引き継ぐ。
> su - > visudo
yum
yumの変更。
centosplusとEPEL(Extra Packages for Enterprise Linux)の導入。
http://www.rcs.arch.t.u-tokyo.ac.jp/kusuhara/tips/linux/fortran.html
http://d.hatena.ne.jp/rx7/20080223/p3