OKWAVEのAI「あい」が美容・健康の悩みに最適な回答をご提案!
-PR-
解決
済み

if文について

  • すぐに回答を!
  • 質問No.152002
  • 閲覧数33
  • ありがとう数4
  • 気になる数0
  • 回答数3
  • コメント数0

お礼率 27% (24/87)

シェルについて殆ど無知なのでお聞きしたいのですが
(質問内容自体シェルの内容に含まれないのかも知れませんが)、

if ( -e $xxx_DIR/$CHK_OK1 ) then
rm $xxx_DIR/$CHK_OK1

と有った場合、$xxx_DIRで指定されたディレクトリに$CHK_OK1で指定されたファイル
が有れば、そのファイルを消す。と言う解釈でOKでしょうか?
通報する
  • 回答数3
  • 気になる
    質問をブックマークします。
    マイページでまとめて確認できます。

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

  • 回答No.3
レベル12

ベストアンサー率 40% (237/589)

OKです。
No.2 の回答にある -s とは、「ファイルが存在し、かつサイズが0より大きい」ことを判定するためのものなので、これだと0バイトのファイル(ごく普通に存在します)はチェックできないことになってしまいます。
用途にもよりますが、普通は -e でいいのではないでしょうか?

なお、UNIX によっては、-e のないものもあります。その場合は、-r(読み取り可能なら真)などを使うといいでしょう。
読み取り可能に設定しないファイルもたまにあるので、万全を期すなら、-w(書込み可能)や -x(実行可能)も OR 条件で指定してチェックするといいです。
お礼コメント
ami_mizuno

お礼率 27% (24/87)

有り難うございます。
今仕事で急にシェルを組むことになって、解読していたんですが
前後の文を読んで「こうじゃないかなー」との推測しかつかなかったもので。
そしてさらに詳しい解説までしていただいて、本当に有り難うございます。
投稿日時 - 2001-10-16 12:48:31
-PR-
-PR-

その他の回答 (全2件)

  • 回答No.1
レベル13

ベストアンサー率 37% (419/1115)

OKだと思います。 勿論消えるのは$CHK_OK1に指定されているファイルで、$xxx_DIRで指定されているディレクトリごと削除されるわけではありません。 #尚、この質問の内容はシェルスクリプトに含まれますよ。(^_^) ...続きを読む
OKだと思います。
勿論消えるのは$CHK_OK1に指定されているファイルで、$xxx_DIRで指定されているディレクトリごと削除されるわけではありません。

#尚、この質問の内容はシェルスクリプトに含まれますよ。(^_^)
お礼コメント
ami_mizuno

お礼率 27% (24/87)

有り難うございます。
今仕事で急にシェルを組むことになって、解読していたんですが
前後の文を読んで「こうじゃないかなー」との推測しかつかなかったもので。
投稿日時 - 2001-10-16 12:46:04
  • 回答No.2
レベル7

ベストアンサー率 29% (5/17)

ファイルの存在を確認するのならば [-s] がいいと思います。 こんな感じでどうでしょうか。 #!/bin/sh dir="/test/" file="test.txt" if [ -s $dir/$file ]   then   rm $dir/$file   echo "OK" else   echo " ...続きを読む
ファイルの存在を確認するのならば [-s] がいいと思います。
こんな感じでどうでしょうか。

#!/bin/sh
dir="/test/"
file="test.txt"

if [ -s $dir/$file ]
  then
  rm $dir/$file
  echo "OK"
else
  echo "ERR"
fi
このQ&Aのテーマ
このQ&Aで解決しましたか?
関連するQ&A
-PR-
-PR-
このQ&Aにこう思った!同じようなことあった!感想や体験を書こう
このQ&Aにはまだコメントがありません。
あなたの思ったこと、知っていることをここにコメントしてみましょう。

その他の関連するQ&A、テーマをキーワードで探す

キーワードでQ&A、テーマを検索する
-PR-
-PR-
-PR-

特集


いま みんなが気になるQ&A

関連するQ&A

-PR-

ピックアップ

-PR-
ページ先頭へ