
現在、solarisの吐き出すログの自動バックアップshellを運用しています。そのshellの内容は
ifでディレクトリ内存在確認後、*でtarに固める、というもので、
if [ -s $abc/* ]; then
cd $abc
tar -cvf abc_`date "+%Y%m%d"`.tar *
という内容なのですが、 if [ -s ・・・
の存在確認の時点でファイルは実際に存在するのに
存在を認識しない場合があるのです。。
ディレクトリ内のファイルの実行権を変えても認識せず、
たとえば認識しないディレクトリの中に「a」というファイルを
作って再度シェルを流してみると、今度は認識します。しかし削除するとしなくなります。また、認識しないファイルのmvで変名してやってみるとうまくいきます。
何が問題なのでしょうか?ファイルの存在確認において、認識しない場合というのがあるのでしょうか?
お助けください!よろしくお願いします。
No.3
- 回答日時:
>if [ `ls $abc | wc -l` -gt 0 ]; then
空のディレクトリでも、
./
../
この二つはカウントされるので
if [ `ls $abc | wc -l` -gt 2 ]; then
の方が良いかも。
そうなんですか。。??
ひょっとしてできないときもあるかもしれないんですね。。
ちょっと慎重に調べつつ運用していこうと思います。
ありがとうございました!参考にさせていただきます!
No.1
- 回答日時:
> $abc/*
このワイルドカードによって、マッチするファイルが無い場合、
[ -s $abc/* ]
は
[ -s ]
にとなり、シンタックス・エラーを引き起こします。逆に二つファイルがある場合、例えば
[ -s foo bar ]
となって、これもシンタックス・エラーを引き起こします。
結局、この書き方だと、ファイルが一つだけ存在する時しか、うまく動かないでしょう。
ありがとうございました。
シンタックスエラーですか。。よく耳にはするんですが。。まだまだ勉強がたりないようです(笑
ワイルドカードという言葉も難しいようで、実は簡単なんですね。
参考になりました!ありがとうございました!
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Visual Basic(VBA) batからexeを実行し戻り値を受け取る EXEの実行内容の結果によって、戻り値を0か1かで返したい 1 2023/07/04 16:40
- Visual Basic(VBA) 【VBA】印刷マクロのループ処理が反映されません 3 2022/08/09 02:15
- Visual Basic(VBA) batからexeを実行し戻り値を受け取る バッチからEXEの結果を受け取りたいのですが、 下記のバッ 1 2023/07/04 15:13
- Visual Basic(VBA) Excel-VBAでのファイルの開き方 4 2023/02/14 11:01
- Visual Basic(VBA) エクセルのマクロについて教えてください。 7 2023/07/04 09:18
- Visual Basic(VBA) エクセルのマクロについて教えてください。 4 2023/07/03 09:11
- 労働相談 合意済み仕様の商品納入後における仕様変更要求への対応について 5 2023/04/19 09:41
- Android tar.ファイルのインストールについて知りたいです 2 2022/07/23 15:34
- Excel(エクセル) 2つのマクロを連続して動かしたい 3 2022/09/20 23:46
- その他(Microsoft Office) Excel、Wordのファイル 3 2023/05/07 04:58
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
削除出来ないディレクトリが出...
-
ftpのmgetコマンドの自分の格納...
-
7zを使うとフォルダの中身がす...
-
linuxのコマンドラインで、拡張...
-
ファイル名で / (スラッシュ...
-
make時に出てきたエラーメッセ...
-
FTPコマンドのCDについて
-
VBscriptでディレクトリ一覧フ...
-
バッチファイルの作成方法
-
MS-DOSプロンプトの基本コマン...
-
KNOPPIX 初心者です。
-
zorin os lite 15 のデスクトッ...
-
ディレクトリの中身(ファイル...
-
FFFTPで接続すると表示されるの...
-
初心者です、オーナー変更につ...
-
特定のアドレスを異なるポート...
-
Windows2000 DOS窓で 行きた...
-
2TBのUSBメモリを2000円ほどで...
-
NASに、lost+found。アクセス出...
-
フォルダにアクセスするとファ...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
ftpのmgetコマンドの自分の格納...
-
ファイル名で / (スラッシュ...
-
拡張子.dどういう意味
-
7zを使うとフォルダの中身がす...
-
Linuxコマンドについて
-
make時に出てきたエラーメッセ...
-
FTPでPUTできない原因は何?
-
"cp -a"と"cp -r"の違い
-
linuxコマンド mkdirでディレ...
-
FTPコマンドのCDについて
-
/(スラッシュ)で区切ったフル...
-
「照合パターンに合いません」...
-
zorin os lite 15 のデスクトッ...
-
scpによるデータ転送後、ディレ...
-
バッチファルの置き場所
-
ホームページのディレクトリを...
-
「ドット(.)」と「¥」の意味...
-
#./configureの時点でダメです。
-
ftpでのフォルダごとの転送はで...
-
LinuxでSGID設定する際、2775と...
おすすめ情報