シェルを最低限読み書きするためのまとめ

スポンサーリンク
スポンサーリンク
ライフスタイル関連のコンテンツ
お金 | 仕事 | 勉強 | プライベート | 健康 |
プログラミング関連のコンテンツ
C言語/C++入門 | Ruby入門 | Python入門 | プログラミング全般

シェルの特殊変数

スポンサーリンク

$$   シェル自身のプロセスID(PID)
$!   最後に実行したバックグラウンドプロセスのプロセスID(PID)
$?   最後に実行したコマンドの終了コード(戻り値)
$-   setコマンドで設定したフラグ一覧
$*   全引数リスト。”$*”と「”」で囲むと”$1 $2 … $n”と全引数を連結して展開。
$@   全引数リスト。”$@”と「”」で囲むと”$1″ “$2″ … “$n”とダブルクォートで囲み展開。
$#   実行シェルに渡された引数の個数
$0   シェル自身のファイル名
$1~$n   シェルに渡された引数の値。$1, $2…と第1引数, 第2引数…が入る。

文字列の判定

文字列    文字列の長さ > 0 なら真
-n 文字列  文字列の長さ > 0 なら真
! 文字列   文字列の長さが 0 なら真
-z 文字列  文字列の長さが 0 なら真
文字列1 = 文字列2  文字列1と文字列2が等しければ真
文字列1 != 文字列2  文字列1と文字列2が等しくなければ真

エントリの判定

-d エントリ   ディレクトリなら真
-f エントリ   通常ファイルなら真
-L エントリ   シンボリックリンクなら真
-r エントリ   読み取り可能ファイルなら真
-w エントリ   書き込み可能ファイルなら真
-x エントリ   実行可能ファイルなら真
-s エントリ   サイズが0より大きければ真
エントリ1 -nt エントリ2  エントリ1がエントリ2より新しければ真
エントリ1 -ot エントリ2  エントリ1がエントリ2より古ければ真

論理演算

! 条件        NOT
条件1 -a 条件2  AND
条件1 -o 条件2  OR

変数の有効範囲, exportコマンド

一度定義された変数はそのシェルの中だけで有効。
親シェル⇔子シェル同士で、変数名は参照出来ない。
export name
と書くと、exportコマンドは、変数nameをグローバル変数化する。
exportコマンドで指定された変数は、子シェルから参照可能となる。

スポンサーリンク
 
スポンサーリンク