- 締切済み
削除コマンドについて
[$ ->]ls -la と入力して以下の結果が出力されたとします。 total 10 drwxr-xr-x+ 2 cd530605 なし 0 Jan 5 2005 ./ d---------+ 5 cd530605 なし 0 Jan 19 2005 ../ drwxr-xr-x+ 1 cd530605 なし 1175 May 28 2004 TEL. bad drwxr-xr-x+ 1 cd530605 なし 1182 May 25 2004 TEL. csv drwxr-xr-x+ 1 cd530605 なし 175 May 27 2004 TEL. ctl drwxr-xr-x+ 1 cd530605 なし 174 May 26 2004 TEL. ctl. bak drwxr-xr-x+ 1 cd530605 なし 7 May 26 2004 TEL. dis drwxr-xr-x+ 1 cd530605 なし 344 May 26 2004 check. sql -rwxr-xr-x+ 1 cd530605 なし 874 May 27 2004 check_tables drwxr-xr-x+ 1 cd530605 なし 296 May 28 2004 tel. sql ________________________________________________________________ ・この結果をrmコマンドを使用して、May 28 2004以前の古いファイルを削除したいのですが、どのようにコマンド打ったらよいのか教えてください。(使用するコマンドが、rm, | ,grepというのはわかるのですが…、どのように組み合わせたらよいのかわかりません。) ・また、参考になるURLなど紹介していただけませんか?
- みんなの回答 (1)
- 専門家の回答
みんなの回答
- meenie
- ベストアンサー率44% (40/90)
grepではなくfindを使うのがよろしいかと。 私はPC-UNIXですがSolaris系でも同じようなことはできると思います。 #touch -t 200405282359 border (タイムスタンプを設定してファイル作成。このタイムスタンプ以前のものが削除対象となります) #find . -type f ! -newer border -exec rm {} \; (上で指定したファイルよりも古いものは全て削除) #rm border (ボーダーファイル削除) 参考URLもご覧ください。
お礼
ありがとうございます!meenieさんのおかげで削除コマンドが成功しました。