我试图删除名为spool的目录中的所有文件,但它仍然有效...我试图使用取消链接
unlink glob "$dir/*home/roz/newfolder/spool*";
是我试图使用的代码,但是它可以用来工作
答案 0 :(得分:-1)
首先,spool*
没有返回'spool'文件夹中的文件,而是 - 文件夹'newfolder'中的所有文件,名称以'spool'开头。
要获取名为“spool”的文件夹中的所有文件,请使用:
glob("$dir/*home/roz/newfolder/spool/*");
要获取'spool'文件夹中的所有隐藏文件,请使用:
glob("$dir/*home/roz/newfolder/spool/.*");
最后,你确定'* home'是你真正想要的吗? 如果它是一个拼写错误,并且你的意思是“回家”它将更加清晰和容易出错(你不必关心隐藏文件或名称中有空格的文件)
my $path = "$dir/home/roz/newfolder/spool";
opendir(my $sdir, $path) or die "Unable to open $path: $!";
unlink map { "$path/$_" if -f "$path/$_" } readdir $sdir;