2011年12月11日日曜日

2011-12-02 Bash勉強会メモ

ここ数年、Eclipseで開発してました。そのため、ShellとEmacsに興味を失っていましたが、最近プロジェクトに移動により再び、その辺をいじりだして興味が湧いたので勉強会に行って来ました。

知らなかったところだけメモ

知らなかったコマンド
true
必ず終了ステータス0を返す

false
終了ステータス1を返す

printf
C言語と同じ。bashにもあったんだ。
jobs
現在実行中のjobを表示。

builtin
同じ名前の関数があったら、組み込みコマンドのほうを優先して実行

nohup
ログアウトしても、そのコマンドを中断させない。

サブシェル
( )でくくってshellを書くことで、別のその部分の実行だけ別のShellのプロセスにより実行される。
(sort a.txt ) > a.txt
とやれば、a.txtをソートして、それを同じファイルに出力できる。

コマンドグループ
{ }でくくって、一連のコマンドをグループ化する。
サブシェルと似ているが少し文法が違う。
{
 uname -a
 date
 who
} > logfile

コマンド置換のネスト
pwd
/usr/local/bin
basename "`pwd`"
bin
dir=`basename "\`pwd\`"`
echo $dir
bin


コマンドの組み合わせ
vim -
標準出力のものをvimで編集

vim  $( find . -print)
find の結果をvimで見る。

その他
#TAGとつけておけば、そのタグで検索出来る。
completeで補完の設定ができる。

0 件のコメント: