Я хочу копировать файлы из одной папки в другую, но я хочу, чтобы терминал запрашивал подтверждение копирования файлов перед копированием каждого файла. Есть ли способ?
Я знаю, что есть cp -i
, но он запрашивает только перед перезаписью.
Вы можете реализовать что-то с помощью предиката find
команды -ok
:
-ok команда ; Как -exec, но сначала спросите пользователя. Если пользователь соглашается, выполните команду. В противном случае просто верните false. Если команда запущена, ее стандартный ввод перенаправляется из /dev/null.
Например,
$ find . -maxdepth 1 -mindepth 1 -name '*.jpg' -ok cp -t ../newdir {} \;
< cp ... ./aaa.jpg > ? y
< cp ... ./aaa-small.jpg > ? n
< cp ... ./bbb.jpg > ? n
< cp ... ./ccc-small.jpg > ? y
< cp ... ./ccc.jpg > ? y
< cp ... ./bbb-small.jpg > ? n
$ ls ../newdir
aaa.jpg ccc.jpg ccc-small.jpg