我需要创建一个脚本来删除许多文件,但这是一个非常广泛的命令来处理Linux,为此我决定用“rm -rf key *”删除但是首先我找不到如何创建此功能可打印从A到Z的所有aetas
如果我可以创建一个循环,我将能够完成任务并继续构建我的脚本。
答案 0 :(得分:1)
不确定你正在寻找什么,但我曾经有一个类似的shell脚本:
ns="/path/to/file.extension,/path/to/directory,/path/to/something*";
IFS=',';
read -a path <<< "${ns}";
nr="${#path[@]}";
start="0";
for (( i = ${start}; i <=${nr}; i++ )); do
echo "Starting fast-delete round $i of $nr, deleting ${path[$i]}";
rm -rf ${path[$i]};
echo "Done with round $i, deleted ${path[$i]}";
done;
您可以根据自己的喜好扩展ns列表,并且还允许将asterix-characters用作通配符。因此/path/to/*
匹配/path/to
中的所有文件和文件夹。但要小心,因为如果在指定路径中出现任何错误,这是非常不可原谅的。因此,您可以轻松地删除更多,然后您讨价还价。
风险是你的(应该提到这一点)
PS:我自从创建了一个GUI-python脚本,可以进行更多的微调。如果你想学习编码,这是一个很好的挑战。编辑(见评论):
根据你的评论判断,你的意思是这样吗?
for x in {a..z}
do
rm -rf /home*/${x}*/mail/*/*/.Trash/cur/*
done
这将执行:
rm -rf /home*/a*/mail/*/*/.Trash/cur/*
,rm -rf /home*/b*/mail/*/*/.Trash/cur/*
等等。