コマンドメモまとめ

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

http://mount-q.com/yamaqblog/?p=16006

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

http://rat.cis.k.hosei.ac.jp/article/linux/bash_intro.html

dpkg

apt-getでインストールしたパッケージの場所を教えてくれる。

dpkg -L (パッケージ名)

evince

linux?の画像表示ビューワー
インストールしたCentOSにはgvもghostviewも入ってなかった・・・入れ忘れた?

ifconfig

IPアドレス確認

> su -
> ifconfig

でinetのところがIPアドレスらしい
http://linuxtips.biz/080/ip.html

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]

でそのプロセスを殺すと、ライセンスが解放された。あー、焦った。

rsync

フォルダの同期

> rsync -avz -e ssh A B

AをBに同期させる。

visudo

他のユーザーに権限を与える。
suに-をつけてスーパーユーザーになることでvisudoが使えるようになる。
suだとログイン時のユーザーの環境設定を引き継ぐ。
su -だとrootの環境設定を引き継ぐ。

> su -
> visudo

http://x68000.q-e-d.net/~68user/unix/pickup?sudo

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