Я хочу удалить все файлы, присутствующие в delete.txt
, из другого места. Я пробовал это:
cat delete.txt | while read file; do rm "$file"; done
, но он удалит файл только из одного места, только как удалить все файлы, упомянутые в delete.txt
, из другого места.
Используйте команду locate в termainal
Сначала обновите базу данных locate:
sudo updatedb
Затем напишите:
locate delete.txt | xargs rm
Если delete.txt
содержит только имена файлов, а не пути,
far="/path/to/files/"
for i in $(cat delete.txt) ; do
echo "$far$i"
done | xargs echo rm
Удалите echo
, когда вы будете довольны созданным команды.