【发布时间】:2013-08-27 20:53:40
【问题描述】:
假设我有两个名为 dir_one 和 dir_two 的目录。在每个目录中,我都有一个名为 data.txt 的文本文件。换句话说,两个单独的目录中有两个文件:/dir_one/data.txt 和 /dir_one/data.txt 尽管文件名相似,但两个文本文件的内容可能相同也可能不同!
我想要做的是:
- 比较文本文件的内容:./dir_one/data.txt 和 ./dir_one/data.txt
- 如果内容相同,删除其中一个文本文件。
我在命令终端输入了以下内容:
diff -qrs ./dir_one/data.txt ./dir_two/data.txt
我收到以下消息:
Files ./dir_one/data.txt ./dir_two/data.txt are identical.
现在我知道这两个文本文件是相同的,我可以使用rm 命令删除其中一个。到现在为止还挺好。不过……
问题是我想自动化删除过程。我不想在命令行中输入rm。是否有任何可能的方法来做到这一点 - 例如在脚本中?
我还想知道如何将一个目录中的大量文本文件与另一个目录中的大量文本文件进行比较。同样,对于发现相同的任何文件,应删除其中一个重复项。这也可能吗?
我发现了类似的问题,但没有关于自动删除其中一个重复文件的问题。请注意,我使用的是 ubuntu 12.04。
【问题讨论】:
标签: linux shell command-line terminal ubuntu-12.04