Синхронизация двух каталогов: одинаковое имя файла, разное окончание файла, разное содержимое файла

NoMachine — мой личный фаворит (, когда он не работает )по ряду причин:

  • Аппаратное ускорение сжатия (видео рабочего стола ).
  • Работает в Windows и Linux.
  • Хорошо работает на соединениях с низкой -пропускной способностью, особенно если клиент и сервер имеют необходимое оборудование для сжатия потока данных.
  • В Linux вы получаете свой рабочий стол таким, каким вы в последний раз покидали его, когда сидели перед компьютером.
  • В Windows и Linux это не влияет на OpenGL.
  • Его можно использовать бесплатно, пока вы выполняете установку, и он используется только внутри вашей компании. IANAL, так что дважды проверьте с вашим сотрудником по соблюдению лицензий.
0
02.07.2019, 14:07
1 ответ

С findиbash:

cdв родительский каталог imagesи labelsи запустите:

find. \( -name "*.webp" -o -name "*.png" \) -type f -exec bash -c '
if [ "${1##*.}" = "webp" ]; then
  file=${1/\/images\//\/labels\/} 
  file=${file%webp}png
else
  file=${1/\/labels\//\/images\/}
  file=${file%png}webp
fi
[ ! -f "$file" ] && echo rm "{}"
' bash {} \;

Вам нужно удалить echo, чтобы действительно удалить файлы.

Чтобы удалить пустые каталоги, см. Как удалить все пустые каталоги в поддереве? .

0
28.01.2020, 03:30

Теги

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