bash シェルスクリプト メモ †コメントは「#」,改行して記述の継続は「\」(バックスラッシュ). 「*.sh」ファイルの1行目 †シバンというらしい. #!/bin/bash ここでインタプリタを定義するので,bashでない場合はそれに対応したコマンドを選択すれば良い(/bin/shとか/bin/fishとか). 引用符の区別 †' (シングルクォート) 中身を文字列として扱う $ echo '$PATH' $PATH $ echo "$PATH" /usr/local/bin:/usr/sbin: ..... $ ls -l `which git` -rwxr-xr-x 1 root root 2205840 m月 dd HH:MM /usr/bin/git AND,OR表現 †foo,barという2つの判定式があるとして,
変数$varが空かどうか確認 †長さがゼロがどうかを判定するには「-z」で,ゼロでないかどうかの判定は「-n」. if [ -z "$var" ]; then echo empty fi 注意すべき点として,ダブルクォーテーション「""」を変数の両端に付さないと,変数が空の場合にエラーを返す. 変数の文字列置換 †①: %, # ${var%/*} # ① "/" 以降を切り取り ②: %%, ## ${var##*/} # ② "/" 以前を切り取り ③:変数varに含まれるorgの文字列がnewに変わる. ${var//org/new} #③ # 例 $ var=abcdefg $ echo ${var%d*} abc $ echo ${var#*d} efg $ echo ${var//abc/ABC} ABCdefg バックグラウンドのプロセスIDの表示 †$! で最後に実行したバックグラウンドプロセスのIDを示す. |