- ベストアンサー
ファイルの存在を調べるコマンドってあります?
あるファイルが存在したら1を返しなかったら0を返すみたいな、ファイルの存在を調べるコマンドってありますか?(csh) (OSはSorarisです)
- みんなの回答 (3)
- 専門家の回答
質問者が選んだベストアンサー
test -f ファイル名 です。 ところで、cshという条件が付いてますが、スクリプトで使用したいのであればcshは使わない方がいいですよ。
その他の回答 (2)
- shige_70
- ベストアンサー率17% (168/946)
回答No.3
#1です。 たしかに、カテゴリ違いですねえ。私も気付かずに回答してました。 #2さんの回答の通りですが、cshでしたら $? の代わりに $status としてください。 ちなみに、終了ステータスは通常if文等に渡して使います。 cshでなくてshの場合ですが、たとえば、 if test -f ファイル ;then あった場合の処理 else なかった場合の処理 fi のように使います。
質問者
お礼
ありがとうございました。
- Tacosan
- ベストアンサー率23% (3656/15482)
回答No.2
Solaris なのになぜ Linux のところで質問されているのかはわかりませんが, test の結果は終了ステータスでわかります. test はスクリプトで使われることが多いため標準出力に出すのはかえって無駄ですし, Unix のコマンドというのは必要なとき以外はなにも出力しないことが多いです. test に限らずコマンドの終了ステータスは $? という変数に入っていますので test -f 存在するファイル; echo $? test -f 存在しないファイル; echo $? を実行すれば違いがわかるかと思います.
質問者
お礼
そういうことですか、分かりました。ありがとうございます。
補足
コンソール上で、 >test -f aaa とやってみたんですが、何も返ってきませんでしたが どういうことなんでしょうか?