No.3ベストアンサー
- 回答日時:
#ファイルの日付はファイル名として
$day = 90; #90日前
$dir = './hoge'; #hogeディレクトリとする
($sec,$min,$hour,$mday,$mon,$year,$wday,$yday,$isdst) = localtime(time-(60*60*24*$day)); #$day日前の日付を求める
$del_target = sprintf("%04d%02d%02d",$year+1900,$mon+1,$mday); #yyyymmddの形にする($del_target前を削除対象にする)
opendir(DIR,$dir); #ディレクトリを開く
@list = grep {/\.csv$/i && -f "$dir/$_"} readdir(DIR); #ディレクトリから拡張子csvでファイルだけを吸い出してリストにする
closedir(DIR); #ディレクトリを閉じる
foreach (@list){ #リストから一つずつ調べる
if(/(\d+)\.csv$/i){ #頭が数字のファイルだったら
if($1 lt $del_target){ #$del_targetと比較して該当するなら
unlink("$dir/$_"); #削除
}
}
}
ファイルから作成日時を取得せずにファイル名が作成日時ならstatは不要(ファイル名の数字で判断するのだから)
No.2
- 回答日時:
#1 の追記。
opendir も必要か。。
http://tohoho.wakusei.ne.jp/wwwperl2.htm#opendir
参考URL:http://tohoho.wakusei.ne.jp/wwwperl2.htm#opendir
この回答へのお礼
お礼日時:2004/09/06 10:56
#1,2の回答に対して返信
早速の回答ありがとうございました。
ところで、90日前の判断をどのようにしたらいいかわかりません。
また、statを使う意味は何でしょうか?
No.1
- 回答日時:
stat
http://tohoho.wakusei.ne.jp/wwwperl2.htm#stat
と
unlink
http://tohoho.wakusei.ne.jp/wwwperl2.htm#unlink
で可能です。
参考URL:http://tohoho.wakusei.ne.jp/wwwperl2.htm#stat,http://tohoho.wakusei.ne.jp/wwwperl2.htm#unlink
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- UNIX・Linux JSLinuxについて。 Linuxのこの手順のプログラミングは合っているでしょうか。 ①ホームディ 2 2022/06/20 15:33
- AJAX RPA(PowerAutomate)の実装について 1 2023/07/31 13:46
- UNIX・Linux Linuxについて質問です。 シェルスクリプト名をfind.shとして、以下の条件をすべて満たすファ 1 2023/02/03 03:50
- Visual Basic(VBA) VBA初心者です。電話番号の数字の前に0を表示させたいです。 2 2022/12/14 03:58
- その他(プログラミング・Web制作) DOSコマンドに詳しい方、お知恵をお貸しください 5 2022/11/04 20:55
- フリーソフト サイトで使用していない画像ファイルの削除ソフトを探しています。 3 2023/04/05 10:49
- Access(アクセス) access,vbaでフォルダ内のファイルをテーブルにインポート、ファイル名もフィールドに追加したい 1 2022/08/31 11:11
- Visual Basic(VBA) 複数のcsvファイルをExcelに一括変換したい 2 2023/03/03 12:44
- Windows 10 2件の中断されたアクション 予期しないエラーのため、ファイルを削除できません。 このエラーが再発する 1 2022/03/27 19:33
- Access(アクセス) CSVファイルの「0落ち」にVBA 6 2023/02/02 15:27
関連するカテゴリからQ&Aを探す
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
パスから最後のディレクトリだ...
-
dos変数の%~dp0は powershellで...
-
複数ファイルの読み込みについて
-
vba dir の相対パス
-
batファイルでrenameができませ...
-
Windowsで複数のファイルを同じ...
-
ファイルの削除について
-
LinuxのC言語で、ファイル名の...
-
readdir()で得られるファイル・...
-
find関数が1階層(カレントディ...
-
fopenでディレクトリ内の全ファ...
-
バッチファイルの作り方(CSV→...
-
ReadLineでの読み出し行を指定する
-
awkスクリプトでダブルクォーテ...
-
教えて!perlから.exeファイル...
-
MySQLに画像を格納してperlで取...
-
ExcelをCSV書き出す場合のシー...
-
DOSコマンドで、標準出力を出力...
-
perlを用いた特定文字列間の抽...
-
perlでの三次元配列の作り方
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
batファイルでrenameができませ...
-
readdir()で得られるファイル・...
-
ディレクトリ名を取得したい
-
パスから最後のディレクトリだ...
-
Windowsで複数のファイルを同じ...
-
C言語でファイル名を取得
-
FindFirstFileとFindNextFileで...
-
Perlで フォルダ内の全て...
-
エラー 'dir.h' : No such fi...
-
vba dir の相対パス
-
一定時間が経過したフォルダの削除
-
テキストファイルの結合
-
LinuxのC言語で、ファイル名の...
-
chdirがうまくできない
-
複数のCSVファイルを一つのCSV...
-
ディレクトリの判別
-
空白を含むディレクトリにある...
-
Perl 特定のフォルダ以外削除
-
正規表現で、特定のファイル名...
-
dos変数の%~dp0は powershellで...
おすすめ情報