Как копировать файлы и переименовывать на лету, когда исходное имя файла содержит встроенные пространства

Я пытаюсь скопировать и переименовать файлы изображений из одного каталога в другой каталог.

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

Ниже приведен пример имен файлов и команды, которые я использовал, а также пример сообщений об ошибках, которые я видел.

Например, я хотел бы скопировать файл «2008_08_17_Transfer 001.jpg» из исходного каталога и переименовать его в «20090314001.jpg» в целевой каталог и т. д. для каждого файла в исходном каталоге, который начинается с «2008_08_17_Transfer».

Вот что я пытался и сообщения об ошибках, которые я вижу:

$ ls -l
total 241968
-rw------- 1 stephen stephen  1347770 Mar 14  2009 2008_08_17_Transfer 001.jpg
-rw------- 1 stephen stephen  1077919 Mar 14  2009 2008_08_17_Transfer 002.jpg
-rw------- 1 stephen stephen  1359947 Mar 14  2009 2008_08_17_Transfer 003.jpg
-rw------- 1 stephen stephen  1309175 Mar 14  2009 2008_08_17_Transfer 004.jpg
-rw------- 1 stephen stephen  1404298 Mar 14  2009 2008_08_17_Transfer 005.jpg
...

for i in *.jpg ; do scp -p "$i" /media/stephen/WDMyBook1_ext4/PicturesRenamedByDateTaken/2009/20090314/20090314`echo "$i" ` ; done

001.jpg: No such file or directory
002.jpg: No such file or directory
003.jpg: No such file or directory
1
задан 21 November 2016 в 04:40

1 ответ

Просто поместите кавычки вокруг имени файла, например

for i in *.jpg ; do scp -p "$i" "/media/stephen/WDMyBook1_ext4/PicturesRenamedByDateTaken/2009/20090314/20090314`echo "$i" `" ; done
0
ответ дан 23 May 2018 в 04:01
  • 1
    Это скопировало файлы для меня и добавило метку даты в начале имени файла, но также скопировала полное имя файла, чего я не хотел в этом случае. Однако у меня есть возможность сделать это таким образом, в некоторых других моих каталогах, поэтому это решение также будет полезно для меня. Огромное спасибо. – Stephen Daddona 21 November 2016 в 05:11

Другие вопросы по тегам:

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