Используя однострочную команду bash с GitBash на windows, используя find
и cp
, я создаю резервную копию группы файлов сценариев, которые существуют в нескольких подкаталогах. В настоящее время я сохраняю их в одном каталоге. Как вы понимаете, возникают конфликты именования. Этого достаточно легко избежать с помощью опции --backup=numbered
, которая создает копию файла. Однако проблема в том, что он помещает номер ПОСЛЕ расширения файла, называя файл следующим образом: example.js.~2~
. Я хочу сохранить расширение файла и назвать файл следующим образом: example2.js
, а не ставить номер после расширения файла. Есть ли способ сделать это?
Другой вариант - добавить имя каталога (из каталога, из которого он копируется) к копируемому файлу вместо добавления номера. Я бы принял любое из них в качестве решения.
Вот что у меня есть:
find . -path "*node_modules*" -prune -o -type f \( -name '*.js' -or -name '*.js.map' -or -name '*.ts' -or -name '*.json' \) -printf "%h\n" -exec cp {} --backup=numbered "/c/test/" \;
Любая помощь будет принята с благодарностью! Спасибо!