Hallo Zusammen
Ich habe da ein Problem...
Folgendes Bash-Script soll bei allen mitgegebenen Dateien dann Namen in Kleinbuchstaben umwandeln. Das funktioniert eigentlich einwandfrei. Ausser eine Datei enthält Leerzeichen, da For sie dann für 2 Dateinen hält.
Wie kann ich dem Abhelfen?
CODE:
for filename in $* ; do
   #Verkleinern
   n=`echo $filename | tr A-Z a-z`
   #Nur Dateien die Grossbuchstaben enthalten...
   if [ "$filename" != "$n" ] ; then
     #Existiert die Datei schon?
     if [ -e $n ] ; then
       echo "Datei $n existiert schon!"
     else
       mv "$filename" "$n"
     fi
   fi
done
Merci
Philipp
For-Schlaufe und Dateien mit Leerzeichen
For-Schlaufe und Dateien mit Leerzeichen
Last edited by aebi on 01. Mar 2002 14:45, edited 2 times in total.
Re: For-Schlaufe und Dateien mit Leerzeichen
Ändere den Kopf der for-Schleife um, dass er wie folgt aussieht: Entweder
for filename ; do
oder
for filename in "$@" ; do
Beides sollte gleich funktionieren. Vergiss aber nicht, dann um jedes Auftreten von $filename die Anführungszeichen zu setzen!
Jochen
for filename ; do
oder
for filename in "$@" ; do
Beides sollte gleich funktionieren. Vergiss aber nicht, dann um jedes Auftreten von $filename die Anführungszeichen zu setzen!
Jochen
Re: For-Schlaufe und Dateien mit Leerzeichen
Mein Held
Danke viel mal
Philipp
Danke viel mal
Philipp