Если вы используете bash, используйте обратную косую черту:
My\ File\ Name.jpg
Возможно ли в Linux переименовать файл из чего-то без пробелов во что-то, содержащее пробелы?
Я знаю, что могу создавать каталоги и файлы с пробелами, выполнив:
mkdir "new dir"
и:
touch "new file.txt"
Я хочу переименовать файлы из:
imgp0882.jpg
в что-то вроде:
20091231 1243 some topic.jpg
И как это будет выглядеть в сценарии оболочки, который использует такие параметры, как :?
for i in *.jpg do
rename "$i" "$somepath/$mydate $mytime $mytopic$extension"
Немного предыстории:
jhead
это переименование, потому что это работает только с файлами JPEG, но я хочу одно решение для любого медиаформата, включая видео.Если вы используете bash, используйте обратную косую черту:
My\ File\ Name.jpg
Может быть, вам нужно просто поставить кавычки вокруг всего пути назначения? Например
$ touch test $ a=one $ b=two $ mv "test" "$a $b" $ ls -la total 8 -rw-r--r-- 1 whitequark whitequark 0 2010-01-27 01:21 -rw-r--r-- 1 whitequark whitequark 0 2010-01-27 01:20 drwxr-xr-x 2 whitequark whitequark 4096 2010-01-27 01:21 . drwxr-xr-x 80 whitequark whitequark 4096 2010-01-27 01:16 .. -rw-r--r-- 1 whitequark whitequark 0 2010-01-27 01:21 one two