假设用户家中有50个目录。我们只想删除某些目录。如果我们创建一个具有要删除的特定目录的文件,是否可以使用脚本根据文件的内容进行删除?我们不希望逐个删除这些,我们不能按日期或其他模式进行删除。
答案 0 :(得分:3)
是的,当然可以。以下是读取文件的示例:
#!/bin/bash
while IFS='' read -r line || [[ -n "$line" ]]; do
echo "Text read from file: $line"
done < "$1"
IFS=''
可以防止修剪前导或尾随空格
-r
可以防止反斜杠被解释
|| [[ -n $line ]]
会阻止您的最后一行被忽略,如果它不以\n
至于删除,你可以用你喜欢的任何东西代替回声。
答案 1 :(得分:0)
假设您使用的是unix,并且您的文本文件被称为“dirs”,每行有1个目录,您所要做的就是:
cat dirs | xargs rm -rf {\;}
答案 2 :(得分:0)
xargs -r rm -rf <dirs.txt
其中dirs.txt包含目录的名称。