Wenn Sie bash verwenden, gehen Sie mit den Backslash-Flüchen in Ihre Leerzeichen:
My\ File\ Name.jpg
Kann man unter Linux eine Datei von etwas ohne Leerzeichen in etwas umbenennen, das Leerzeichen enthält?
Ich weiß, dass ich Verzeichnisse und Dateien mit Leerzeichen erstellen kann, indem Sie Folgendes tun:
mkdir "new dir"
und:
touch "new file.txt"
Ich möchte Dateien umbenennen von:
imgp0882.jpg
in etwas wie:
20091231 1243 some topic.jpg
Und wie wäre es in einem Shell - Skript suchen, die Parameter wie verwendet: ?
for i in *.jpg do
rename "$i" "$somepath/$mydate $mytime $mytopic$extension"
Ein kleiner Hintergrund:
jhead
diese Umbenennung nicht, da dies nur mit JPEG-Dateien funktioniert, aber ich möchte eine einzige Lösung für jedes Medienformat, einschließlich Videos.Wenn Sie bash verwenden, gehen Sie mit den Backslash-Flüchen in Ihre Leerzeichen:
My\ File\ Name.jpg
Vielleicht müssen Sie nur den gesamten Zielpfad in Anführungszeichen setzen ? Z.B
$ 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