Ich sollte nur Namen von Dateien oder Verzeichnissen mit dieser Konstruktion ausgeben:
ls -Al | while read string
do
...
done
ls -Al
Ausgabe :
drwxr-xr-x 12 s162103 studs 12 march 28 12:49 personal domain
drwxr-xr-x 2 s162103 studs 3 march 28 22:32 public_html
drwxr-xr-x 7 s162103 studs 8 march 28 13:59 WebApplication1
Zum Beispiel, wenn ich versuche:
ls -Al | while read string
do
echo "$string" | awk '{print $9}
done
dann nur Dateien und Verzeichnisse ohne Leerzeichen ausgeben. Wenn eine Datei oder ein Verzeichnis Leerzeichen wie "Persönliche Domain" enthält, ist dies nur das Wort "Persönlich".
Ich brauche eine sehr einfache Lösung. Vielleicht gibt es eine bessere Lösung als awk.
ls -Al | while
. Ein einfacher und zuverlässiger Weg ist for string in *; do echo "$string"; done
.
ls
? Parsing ls
und "Arbeit in allen * nix und wird nicht brechen, wenn etwas passiert" passen nicht gut zusammen.
ls -Al *' '*
?ls
Die Ausgabe von Parsing führt nie zu etwas Gutem.