忍者ブログ
プログラム実験・備忘録
[13] [12] [11] [10] [9] [8] [7] [6] [5] [4] [3]
×

[PR]上記の広告は3ヶ月以上新規記事投稿のないブログに表示されています。新しい記事を書く事で広告が消えます。

コマンドプロンプトまたはバッチファイル、、、
に限らず、shやcshでも同じ理屈でできそうか。

+ + + + + + + + + +
一番古いファイルを削除
ここでは、拡張子がlogを対象とする。
(バッチファイル)
for /f %%a in ('dir /b /o-d *.log') do set filename=%%a
del %filename%

※コマンドプロンプトなら、forの変数は%%aではなく%a

コマンドプロンプトまたはバッチファイル、、、
に限らず、shやcshでも同じ理屈でできそうか。

1.dir /b /o-d
/b     ⇒ファイル名称のみ、余計な情報が出力されない。
/o-d ⇒/oでソート、dで日付ソート、更に-で逆順。 /odならば単純に古いものから表示
2.for /f "skip=10" %%a in ('command')
/f     ⇒ 反復ファイル解析  この場合は 'command' の出力分だけ反復する。
3.set
ここでプロンプトの変数に格納、反復して格納するので結果的に
日付降順ソートの最後がfilenameへ
4.del
削除実行

shとかでも、同じ理屈は可能かな。

(sh)
for i in `ls -1t *.log`
do
filename=$i
done
rm  filename

※強制で消したければ rm -f  いちいち確認必要なら rm -i

(csh)
foreach i (`ls -1t *.log`)
set filename=$i
end
rm filename
PR
この記事にコメントする
お名前
タイトル
文字色
URL
コメント
パスワード Vodafone絵文字 i-mode絵文字 Ezweb絵文字
この記事へのトラックバック
この記事にトラックバックする:
広告
プロフィール
negao (45歳  男性)
土木工学卒でなぜかSEやってます。
最近、残業代も出なくなってツライな・・・
ブログ内検索
カウンター
アクセス解析
[13] [12] [11] [10] [9] [8] [7] [6] [5] [4] [3]
Powered by ニンジャブログ  Designed by ゆきぱんだ
Copyright © するのは失敗、何もしないのは、、、 All Rights Reserved
忍者ブログ / [PR]