linux - Unix:如何删除文件中列出的文件

我有一个长文本文件,其中包含要删除的文件掩码列表

例子:

/tmp/aaa.jpg
/var/www1/*
/var/www/qwerty.php

我需要删除它们。试过 rm `cat 1.txt` 说列表太长了。

找到了这个命令,但是当我从列表中检查文件夹时,其中一些仍然有文件 xargs rm <1.txt手动 rm 调用会从此类文件夹中删除文件,因此权限没有问题。

最佳答案

这不是很有效,但如果您需要全局模式(如/var/www/*),则可以使用

for f in $(cat 1.txt) ; do 
  rm "$f"
done

如果您没有任何模式并且确定文件中的路径不包含空格或其他奇怪的东西,您可以像这样使用 xargs:

xargs rm < 1.txt

https://stackoverflow.com/questions/5142429/

相关文章:

python - Anaconda 与 miniconda

linux - shell脚本杀死监听端口3000的进程?

linux - 如何 RSYNC 单个文件?

python - 如何为子图设置 xlim 和 ylim

python - 在 IPython 中自动重新加载模块

python - 打印 Python 类的所有属性

python - 如何在 Python 中进行 scp?

linux - Shell - 将变量内容写入文件

c - 如何在linux c程序中获取pthread的线程ID?

python - 在批处理文件中休眠