Am Samstag, 28. Februar 2009 12:45:51 schrieb Philipp Thomas:
Am Fri, 27 Feb 2009 22:43:41 +0100 schriebst Du:
Ich schrieb ja: ls und find akzeptieren Dateien mit Leer- u. Sonderzeichen, rem nicht.
Du hast es offensichtlich immer noch nicht begriffen denn das ist falsch! [...]
Philipp
Was sagt der Workshop 1. ls :~/ws> ls su $ ls.01 su@ls.01 su&ls.01 su u ls.01 su-u-ls.01 ls Angabe des Inhalts ist Fehlerfrei 2. find stefan@linux-6ric:~> find $HOME -name *.01 /home/stefan/ws/su@ls.01 /home/stefan/ws/su $ ls.01 /home/stefan/ws/su-u-ls.01 /home/stefan/ws/su u ls.01 /home/stefan/ws/su&ls.01 In der Shell wird unter find Platzhalter behandelt und * als Platzhalter für jede Art und Menge von Zeichen, außer Punkt am Anfang angegeben. 3. ls `find...` Backquoting stefan@linux-6ric:~> ls `find $HOME -name '*.01'` ls: Zugriff auf /home/stefan/ws/su nicht möglich: Datei oder Verzeichnis nicht gefunden ls: Zugriff auf $ nicht möglich: Datei oder Verzeichnis nicht gefunden ls: Zugriff auf ls.01 nicht möglich: Datei oder Verzeichnis nicht gefunden ls: Zugriff auf /home/stefan/ws/su nicht möglich: Datei oder Verzeichnis nicht gefunden ls: Zugriff auf u nicht möglich: Datei oder Verzeichnis nicht gefunden ls: Zugriff auf ls.01 nicht möglich: Datei oder Verzeichnis nicht gefunden /home/stefan/ws/su@ls.01 /home/stefan/ws/su&ls.01 /home/stefan/ws/su-u-ls.01 ls und find als Backquoting führen zu Fehlerausgaben, auch mit Anführungszeichen. 4. find && ls Kombination von Befehlen :~> find -name *.01 && ls ./ws/su@ls.01 ./ws/su $ ls.01 ./ws/su-u-ls.01 ./ws/su u ls.01 ./ws/su&ls.01 01.sh 01.txt Bilder bin Desktop Documents Festplatte Find Fonts-L Music nautilus-debug-log.txt public_html Updater workshops ws Kombination von Befehlen. Die gefundenen Dateien werden ausgegeben und der Inhalt des Verzeichnisses 5. echo `find..` Bachquoting :~> echo `find $HOME -name *.01` /home/stefan/ws/su@ls.01 /home/stefan/ws/su $ ls.01 /home/stefan/ws/su-u-ls.01 /home/stefan/ws/su u ls.01 /home/stefan/ws/su&ls.01 echo und Backquoting wird sauber ausgeführt. 5. rm :~/ws> ls su $ ls.01 su@ls.01 su&ls.01 su u ls.01 su-u-ls.01 :~/ws> :~/ws> rm su $ ls.01 rm: Entfernen von „su“ nicht möglich: Datei oder Verzeichnis nicht gefunden rm: Entfernen von „$“ nicht möglich: Datei oder Verzeichnis nicht gefunden rm: Entfernen von „ls.01“ nicht möglich: Datei oder Verzeichnis nicht gefunden :~/ws> rm su@ls.01 :~/ws> rm su&ls.01 [1] 5297 rm: Entfernen von „su“ nicht möglich: Datei oder Verzeichnis nicht gefunden bash: ls.01: command not found [1]+ Exit 1 rm su :~/ws> rm su u ls.01 rm: Entfernen von „su“ nicht möglich: Datei oder Verzeichnis nicht gefunden rm: Entfernen von „u“ nicht möglich: Datei oder Verzeichnis nicht gefunden rm: Entfernen von „ls.01“ nicht möglich: Datei oder Verzeichnis nicht gefunden :~/ws> rm su-u-ls.01 :~/ws> ls su $ ls.01 su&ls.01 su u ls.01 Das einzelne löschen der Dateien mit rm zeigt mir, welche ohne Probleme gehen und welche nicht. Hier ist es besser statt rm Datei lieber rm 'Datei' einzugeben 6. Resümee Die Reaktion von rm auf die einzelnen Dateien zeigt mir, warum die Kombination von Befehlen wie bei ls nicht hier nicht geht. 2. Zeigt die Ausgabe von find. Auch wenn ich '*.01' angebe, die Ausgabe (su $ lö.01) bleibt die gleiche. Ich muss die Ausgabe su $ lö.01 in 'su $ lö.01' umwandeln und kann sie dann löschen. Ich begriff die Aufgabe von exec und xargs. Der Workshop zeigt wie die Befehle für sich mit den einzelnen Dateien fertig werden. Gruß Stefan -- 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