[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: Dateinamen mit Leerzeichen korrekt bearbeiten



Am Mo, den 19.04.2004 schrieb Thilo Engelbracht um 11:24:
> Hallo Liste!
> 
> Heute habe ich mir ein kleines Skript erstellt (Beispiel):
> 
>      #!/bin/bash
> 
>      verzeichnis="/home/thilo/Data"
> 
>      for datei in `ls -A $verzeichnis`
>      do
>      if [ -f $verzeichnis/$datei -a -r $verzeichnis/$datei ]
>      then
>           # hier wird die Datei weiterverarbeitet
> 	  # ...
> 	  # ...
>      fi
>      done
> 
> 
> Anschliessend habe ich zu Testzwecken einige Dateien angelegt:
> 
>      echo "abc" > /home/thilo/Data/datei-1
>      echo "xyz" > /home/thilo/Data/datei-2
>      echo "012" > "/home/thilo/Data/datei 3"
>      echo "789" > "/home/thilo/Data/datei 4"
> 
> 
> Mein Problem: Es werden nur die Dateien verarbeitet, die kein
> Leerzeichen enthalten.
> 
> Wie mu� ich (Newbie!) mein Skript ändern, dass alle Dateien in dem
> Verzeichnis beachtet werden?
> 

Hallo Thilo,

du musst vor der Schleife folgendes einfügen:
IFS="                                                                                  
"
Damit wird als Trennzeichen Newline verwendet (mehr siehe man bash).

Gruss
-- 
Peter Hoffmann <ph@peter-hoffmann.com>



Reply to: