3

我有一个名为 input.txt 的文本文件,如下所示。

adva
abab
dfg1
672a

我有一个名为 folder1 的文件夹,其中包含 adva.txt、dfg1.txt、asd2.txt 等文件的列表。在 folder1 中,我只需要保留 input.txt 中存在的文件名。其他文件应从文件夹 1 中删除。

您的建议将不胜感激!

4

1 回答 1

3

由于它需要大量删除文件,我强烈推荐安全方法。考虑这个脚本:

#!/bin/bash

# rename folder1
mv folder1 _folder1

# create a new dir folder1
mkdir folder1

# copy required files from _folder1 to folder1
while read l; do
    cp _folder1/$l.txt folder1
done < input.txt 

运行此脚本后,验证文件夹 1 中的所有文件,如果满意,则仅删除文件夹和_folder1使用中的所有文件:

rm -rf _folder1
于 2013-11-13T06:54:16.497 回答