+ + + + + + + + + +
一番古いファイルを削除
ここでは、拡張子が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
shとかでも、同じ理屈は可能かな。
(sh)
for i in `ls -1t *.log`
do
rm filename
※強制で消したければ rm -f いちいち確認必要なら rm -i
(csh)
foreach i (`ls -1t *.log`)
rm filename
ここでは、拡張子が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 ⇒ファイル名称のみ、余計な情報が出力されない。2.for /f "skip=10" %%a in ('command')
/o-d ⇒/oでソート、dで日付ソート、更に-で逆順。 /odならば単純に古いものから表示
/f ⇒ 反復ファイル解析 この場合は 'command' の出力分だけ反復する。3.set
ここでプロンプトの変数に格納、反復して格納するので結果的に4.del
日付降順ソートの最後がfilenameへ
削除実行
shとかでも、同じ理屈は可能かな。
(sh)
for i in `ls -1t *.log`
do
filename=$idone
rm filename
※強制で消したければ rm -f いちいち確認必要なら rm -i
(csh)
foreach i (`ls -1t *.log`)
set filename=$iend
rm filename
PR
この記事にコメントする
広告
プロフィール
negao (45歳 男性)
土木工学卒でなぜかSEやってます。
最近、残業代も出なくなってツライな・・・
最近、残業代も出なくなってツライな・・・
ブログ内検索
カテゴリー
カウンター
アクセス解析