On 28.04.2008 12:01, Andre Tann wrote (please find the answer below the original text):
Hallo zusammen,
ich möchte alle Dateien suchen, die ein & im Namen haben, und dieses durch _ ersetzen. Warum funktioniert das hier nicht:
find . -iname '*&*' | while read xx; do mv ""$xx"" "'$(echo $xx | sed 's/&/_/g')'"; done
Es kommt immer die Fehlermeldung, daß die gesuchte Datei nicht gefunden werden konnte, wobei der aufgeführte Name ein & enthält. Dabei ist der Name aber korrekt von " umschlossen worden, was ich auf diese Weise sehe:
find . -iname '*&*' | while read xx; do echo mv ""$xx"" "'$(echo $xx | sed 's/&/_/g')'"; done
Woran fehlt es?
Man kann mit "set -x" vorher viel debug anschalten. und mit "set +x" debug danach wieder ausmachen. Hilft manchmal viel. -Ingo. -- Um die Liste abzubestellen, schicken Sie eine Mail an: opensuse-de+unsubscribe@opensuse.org Um eine Liste aller verfuegbaren Kommandos zu bekommen, schicken Sie eine Mail an: opensuse-de+help@opensuse.org