问:我正在使用unix平台上的脚本,我必须找到目录中所有文件,这些文件从现在开始提前8小时出现。
我正在使用以下命令按照上述条件检索文件:
find . name "*.dat" -mmin -480
但文件名本身中有少量文件具有特殊字符(双问号)??
“并使用上面的命令,名称中包含??
的文件,分成两部分分为两行。
例如:
file name : aabb??cc.dat
在上面的命令运行后,结果如下:
$./aabb
$cc.dat
($这里是unix命令提示符) 有人可以建议在上面的命令或正确的方法中进行更正以处理此异常。
答案 0 :(得分:0)
此命令将显示find
正在考虑这些文件,就像其他文件一样:
find . -name "*.dat" -mmin -480 -exec \
ksh -c 'c=1
for file do
printf "file #%d is \"%s\"\n" $c "$file"
c=$((c+1))
done ' sh {} +
如果find
显示某些文件名分为两行,那只是因为他们的名字有一个嵌入的新行。这很奇怪,但它们仍然是有效的文件名。