Am Sam, 26 Feb 2000 schrieb Reinhard Foerster:
In der Art haette ich auch noch einen: find . -type f -name "*\ *"|(while read x; do echo $x `echo $x|sed s//_/g`; done)
Was jetzt bloß noch doof ist, das wenn ich echo durch mv ersetze, meckert mv mv: Beim Verschieben mehrerer Dateien muß das letzte Argument ein Verzeichnis sein
Also muss man aus "foo bar" noch irgendwie "foo\ bar" machen, mit ein bißchen probieren hab ich dann folg. bekommen
find . -type f -name "*\ *"|(while read x; do echo `echo $x|sed "s/\ /\\\ /g"` `echo $x|sed s/\ /_/g`; done)
bei echo ist mit 5 und 6 mal \ die Ausgabe foo\ bar
aber mv meckert immer noch.
Vereinfacht sieht das problem so aus:
mv `echo foo bar |sed "s/\ /\\\ /g"` /tmp
mv: foo: Datei oder Verzeichnis nicht gefunden mv: bar: Datei oder Verzeichnis nicht gefunden
mit der Datei "foo bar"
Hat jemand eine Idee ?
Danke, Bye, Stephan