匿名質問者
匿名質問者匿名質問者とは「匿名質問」を利用して質問した質問者。
「匿名質問」では、ユーザー名を公開せずに匿名の質問ができます。
詳しくはこちら

perlでディレクトリ内のファイルをすべて消したい。


ディレクトリの中に入っているファイルをすべて消したいです。
ググって2通り試してみたのですがうまくいきませんでした。
(どちらもエラーは出ずただ消えないだけ…)


$Deleir = './img';
opendir(DIR, $Deleir);
unlink map { $Deleir.'/'.$_ } grep { -f $Deleir.'/'.$_ } readdir DIR;
closedir(DIR);


$Deleir = './img';
unlink(glob("$Deleir/*.*"));

どのようにしたらよいでしょうか?

回答の条件
  • 1人5回まで
  • 13歳以上
  • 登録:2017/06/02 09:25:40
  • 終了:2017/06/09 09:30:03

回答(3件)

匿名回答1号 No.1

匿名回答1号「匿名質問」を利用した質問に回答すると「匿名回答○号」と匿名で表示されます。
「匿名質問」では、ユーザー名を公開せずに匿名の質問ができます。
詳しくはこちら
2017/06/02 20:49:45

たとえば

$|=1;
my $Deleir = './dum';
for my $file(glob("$Deleir/*.*")) {
	print "$file ... ";
	unlink $file or die "$!";
	print "done\n";
}

のようにすれば削除できない理由が分かるかも

匿名回答3号 No.2

匿名回答3号「匿名質問」を利用した質問に回答すると「匿名回答○号」と匿名で表示されます。
「匿名質問」では、ユーザー名を公開せずに匿名の質問ができます。
詳しくはこちら
2017/06/03 16:59:10

use File::Path 'rmtree';

$target = './img'; # 削除対象のディレクトリ

rmtree($target);
匿名回答4号 No.3

匿名回答4号「匿名質問」を利用した質問に回答すると「匿名回答○号」と匿名で表示されます。
「匿名質問」では、ユーザー名を公開せずに匿名の質問ができます。
詳しくはこちら
2017/06/04 16:37:03

File::Path モジュールの rmtree を使ってはいかがですか?
http://d.hatena.ne.jp/perlcodesample/20100409/1270894115
・ディレクトリ毎消える
・サブディレクトリも消える
という違いがあるので、意図されるものとは異なるかもしれませんが。

この質問への反応(ブックマークコメント)

「あの人に答えてほしい」「この質問はあの人が答えられそう」というときに、回答リクエストを送ってみてましょう。

これ以上回答リクエストを送信することはできません。制限について

絞り込み :
はてなココの「ともだち」を表示します。
回答リクエストを送信したユーザーはいません