以下に示すように、input.txt という名前のテキスト ファイルがあります。
adva
abab
dfg1
672a
adva.txt、dfg1.txt、asd2.txt などのファイルのリストを含む folder1 という名前のフォルダーがあります。folder1 では、input.txt に存在するファイル名のみを保持する必要があります。他のファイルはフォルダーから削除する必要があります1。
あなたの提案をいただければ幸いです!!
ファイルの一括削除が必要なため、安全なアプローチを強くお勧めします。次のスクリプトを検討してください。
#!/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
このスクリプトが実行された後、folder1 内のすべてのファイルを確認し、問題がなければ、次を使用してフォルダーとすべてのファイルのみを削除します_folder1
。
rm -rf _folder1