• ベストアンサー

echo $!の意味を教えてください

Linuxにおいて、コマンド echo $! の意味を教えてください。 ネットで検索しても、特殊文字なので検索できません・・・ よろしくお願いします。

質問者が選んだベストアンサー

  • ベストアンサー
  • pringlez
  • ベストアンサー率36% (598/1630)
回答No.2

バックグラウンドで実行されたコマンドのプロセスID が設定される変数。 「 sleep 100 & 」のように & を付けて実行すると、そのコマンドはバックグラウンドで実行される。 上記の場合、「 $! 」には sleep コマンドの PID (プロセスID)がセットされている。 変数を使用する - UNIX & Linux コマンド・シェルスクリプト リファレンス http://shellscript.sunone.me/variable.html

hirapiro
質問者

お礼

早々に的確なご対応、ありがとうございました。 ページに記載している一覧表、とても見やすくてためになりました。 ありがとうございました。

その他の回答 (3)

  • kmee
  • ベストアンサー率55% (1857/3366)
回答No.4

まず、 $で始まるものは『変数(パラメータ) を展開』する『シェルの機能』だということを覚えておきましょう。 そうすると、マニュアルの「パラメータ展開」というところを読めばいい、ということがわかります。 今後、他の見慣れない「 $なんたら 」というものを見かけたら、「シェルのマニュアル」の「パラメータ展開」を探せばいいのです。 Linuxで一般的に使われているのは bash というシェルです。 bash のマニュアルから、パラメータ展開というところを読んでみると http://linuxjm.sourceforge.jp/html/GNU_bash/man1/bash.1.html > 特殊パラメータ > ! 最後に実行されたバックグラウンド (非同期) コマンドの プロセス ID に展開されます。 とわかります。

hirapiro
質問者

お礼

なるほど、細かくご説明いただきましてありがとうございました。 初心者なもので、大変勉強になりました。 ありがとうございましたm(__)m

  • maiko0318
  • ベストアンサー率21% (1483/6969)
回答No.3

すいません。間違っています。無視してください。m(__)m

hirapiro
質問者

お礼

いえいえ、素早いご返答ありがとうございました(^^)

  • maiko0318
  • ベストアンサー率21% (1483/6969)
回答No.1

http://shellscript.sunone.me/for.html ここに載っています。