- - PR -
シェルスクリプトの順序構造について
1
投稿者 | 投稿内容 | ||||
---|---|---|---|---|---|
|
投稿日時: 2007-06-13 14:12
みなさんこんにちは、ヤックル@Linux超初心者です。
今一生懸命シェルスクリプトの学習をしておりますが シェルコマンドの実行順序が最初から最後まで 保たれる保証があるのか教えていただきたいと思います。 cp (ファイルのコピー) rsh -l (リモートシェルの起動) ls -l (コピーしたファイルの状態表示) echo $? (lsコマンドの結果表示) rm (コピーしたファイルの削除) というようにコマンドを 書いた場合、順序構造は必ず上から下へ 流れて実行されますでしょうか? (1つのコマンドの実行結果を待たずに 次のコマンドを実行してしまうようなことは ありえますか?) 初心者質問で申し訳ございません。よろしくお願いいたします。 | ||||
|
投稿日時: 2007-06-13 18:45
kataと申します。
基本的には上から下です。 @コマンド01 Aコマンド02& バックグラウンド Bコマンド03 このような場合、 Aをバックグラウンドで実行しながら、 Bをフォアグラウンドで実行するといったことが あるかとは思いますが・・・。 こういう意味では、結果を待たずにということにもなるのかもしれません。 確実なのは、 一つのコマンドを実行した際のリターンコードを拾って そのコードで処理を振り分ければいいと思います。 #!/bin/sh RET=0 ret="" test=Hello echo $test; ret=$? #ret=1 if [ "$ret" -eq "$RET" ]; then echo "OK" else echo ""NG fi 以上、ご参考までに。 | ||||
|
投稿日時: 2007-06-13 18:53
kataさんこんにちは、返信ありがとうございます。
これで入門書にも記述されていなかったことが 解決いたしました。本当にありがとうございます。 m(_ _)m |
1