我目前有一个包含 4 种类型的 100 个文件的目录,总共有 400 个文件。我想找出哪些丢失了。我当前的脚本是:
for((i=1; i<=100; i++)); do name="File_Type_1_${i}.RData";
[[ ! -e "$name" ]] && echo "missing $name"; done
for((i=1; i<=100; i++)); do name="File_Type_2_${i}.RData";
[[ ! -e "$name" ]] && echo "missing $name"; done
for((i=1; i<=100; i++)); do name="File_Type_3_${i}.RData";
[[ ! -e "$name" ]] && echo "missing $name"; done
for((i=1; i<=100; i++)); do name="File_Type_4_${i}.RData";
[[ ! -e "$name" ]] && echo "missing $name"; done
必须运行 4 次很烦人。有没有办法一次运行所有东西?这
此命令使用大括号扩展生成所有 400 个文件名,然后要求
ls
列出它们,只是我们立即将输出重定向到 /dev/null,将其删除。ls
将向 stderr 抱怨丢失的文件;例如:丢失的文件就在其中!