2016-06-23 6 views
0

私は小さなバックアップシェルスクリプトを開発しようとしました。 Backup_FILESERVERフォルダにintを実行すると、tgzが作成されます。 しかし/ rootからはエラーが出ます。Shellscript tgzで2番目に新しいフォルダ

tar cvfz /NAS/for_tape/FILESERVER.tgz /NAS/Backup_FILESERVER/`ls -Art | tail -2 | head -n 1` 

エラー:フォルダで

tar: Tuesday: Cannot stat: No such file or directory

tar: Exiting with failure status due to previous errors

"/ NAS/Backup_FILESERVER" は、各曜日のための5つのフォルダです。月曜日、火曜日、...

実行可能にすることはできますか?

+0

を開始する前に、必要なフォルダを与える場合は、確認できますか? –

+0

私はbashでプログラミングするのはあまりよくありません。私はこれを1つのコマンドラインで実行すると思ったが、もっと快適だった。 –

答えて

1

あなたはls -1rt

tar cvzf /NAS/for_tape/FILESERVER.tgz `find /NAS/Backup_FILESERVER/ -type d -exec sh -c "ls -1rt" \; | tail -2 | head -n 1` 

findコマンドを試すことができますは、更新時刻に基づいてファイルをソートし、それを反転させます。

コマンドfind /NAS/Backup_FILESERVER/ -type d -exec sh -c "ls -1rt" \; | tail -2 | head -n 1はあなたが変数にファイル名を格納し、tarコマンドにそれを養うない理由圧縮

+0

\t提案をありがとうございますが、このコマンドを実行すると何も起こりません。私は約5分間待ったが、アーカイブは作成されなかった。 –

+0

findコマンドは予想されるフォルダを返しますか? – Inian

+0

残念ながら、findは何も返しません。 –

関連する問題