Как удалить соответствие файлам из каталога A в каталоге B в командной строке?

У меня есть некоторые дубликаты файлов в каталогах A и B, как я мог удалить простофиль в B использование имен файлов от A в ударе?

Как сделать, это в другой оболочке - приветственный бонус.

1
15.11.2014, 15:04
1 ответ
cd B

ls../
A
B

comm <(ls../A) <(ls./) -1 -2 -z | xargs -0 rm

commпоказывает три столбца,

  1. уникально для файла1 (A)
  2. уникально для файла2 (B)
  3. есть на обоих

Таким образом, мы опускаем столбцы 1, 2 на -1 -2. -zбудет использовать NULL в качестве разделителя. По умолчанию `\n' новая строка.

При работе с каналом и списком произвольных строк, таких как имя файла, передача с разделителями NULL безопасна.

0
31.03.2020, 12:14

Теги

Похожие вопросы