28.03.2024, 19:22 UhrDeutsch | English
Hallo Gast [ Registrierung | Anmelden ]

Neues Thema eröffnen   Neue Antwort erstellen
Vorheriges Thema anzeigen Druckerfreundliche Version Einloggen, um private Nachrichten zu lesen Nächstes Thema anzeigen
Autor Nachricht
Witwe_Bolte
Titel: Wow. Der Shellmeister  BeitragVerfasst am: 18.07.2006, 15:01 Uhr



Anmeldung: 09. Apr 2005
Beiträge: 203

Sehr glücklich
Ist natürlich schicker. basename kannte ich gar nicht ( is es e wunder? )
Danke nochmal. Vielleicht kann ich noch mit nem Python vs. Bash Benchmark auftrumpfen Smilie

später: nö. schneller gehts mit scrpiting kaum.
Ne Idee, warum jetzt die Leerzeichen im Dateinamen bei toolame durchlaufen?

_________________
unsensibel, aber empfindlich
 
 Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden  
Antworten mit Zitat Nach oben
Kano
Titel: RE: liest ja jetzt eh keiner mehr  BeitragVerfasst am: 18.07.2006, 15:16 Uhr



Anmeldung: 17. Dez 2003
Beiträge: 16783

Nun deine Lösung geht über Zwischenfiles, die brauchen Platz, bringen aber nichts. Der Zeitaufwand sollte wohl ähnlich sein.
 
 Benutzer-Profile anzeigen Private Nachricht senden  
Antworten mit Zitat Nach oben
Witwe_Bolte
Titel: Leerzeichen und ich schon wieder  BeitragVerfasst am: 21.07.2006, 08:25 Uhr



Anmeldung: 09. Apr 2005
Beiträge: 203

Mein Problem bleiben die Leerzeichen in Pfade und Dateinamen.
Warum Deine for-Schleifen funzen und meine nicht, kapier ich nicht. Habe mit find -print0 und xargs -0 wohl alles durch. Selbst wenn die Ausgabe von xargs -0 brav den ganzen Namen in "" ausgibt, bekommt zB rm immer die einzelnen Wörter. Das gleiche mit Backticks. Die Exapnsio *.suffix haut bei Dir ja hin. Wie kann ich aber mit ner Schleife Verzeichnisbäume mit Leerzeichen durchlaufen. Außer ls und find ist mir bisher nix eingefallen.
Muß ich vielleicht doch IFS mit " oder \n überschreiben?
Bleibt das dann für diese shell oder diesen Prozeß privat oder wird das global (i trau mi ned). Soifz

_________________
unsensibel, aber empfindlich
 
 Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden  
Antworten mit Zitat Nach oben
schnorrer
Titel: RE: Leerzeichen und ich schon wieder  BeitragVerfasst am: 21.07.2006, 13:51 Uhr



Anmeldung: 09. Jan 2006
Beiträge: 1720

warum kanos zeile funzt ist doch klar. "*.og".
" != '' != ' ' das geht leider nicht. das müßte so " " heißen. '' ist ein NULL zeichen. nix nada.

'%20' geht wieder.

Kano löst es mit dem Stern for der erweiterung. Und Stern heißt alle Zeichen in der kette.
 
 Benutzer-Profile anzeigen Private Nachricht senden  
Antworten mit Zitat Nach oben
Witwe_Bolte
Titel:   BeitragVerfasst am: 21.07.2006, 15:18 Uhr



Anmeldung: 09. Apr 2005
Beiträge: 203

@Schnorrer: Daß for x in *.ogg expandiert wird, war mir schon klar. Davon gehen aber die Leerzeichen in den Dateinamen nicht weg. In der Expansion werden die Leerzeichen aber weder escaped, noch werden die Ausgaben in "" gesetzt. Beispiel: for x in *; do echo $x; done gibt brav alle Dateien und Verzeichnisse zeilenweise aus. Jetzt kommts:
for x in *; do echo $x && ls; done findet bei ls die Namen mit den Leerzeichen nicht.
Vielleicht vergeht das Brett vor meinem Hirn in den nächsten 2 Wochen. Bin Jetzt erst mal im Urlaub.
Besorgt mir bis dahin das ultimative AHA-Erlebnis. (bittebitte)

_________________
unsensibel, aber empfindlich
 
 Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden  
Antworten mit Zitat Nach oben
schnorrer
Titel:   BeitragVerfasst am: 21.07.2006, 18:26 Uhr



Anmeldung: 09. Jan 2006
Beiträge: 1720

ls hat schon immer ein Problem mit Leerzeichen gehabt.

for x in *;
do
echo $x && ls; ### gib nur etwas aus wenn die Expr == true ist. also kein LS, da echo $x ja nicht "ls" auspuckt.
### fahre ohne Ausgabe bei done fort.
done


for x in *;
do
echo $x,
ls;
done

das ist was du willst.
 
 Benutzer-Profile anzeigen Private Nachricht senden  
Antworten mit Zitat Nach oben
Witwe_Bolte
Titel: @schnorrer  BeitragVerfasst am: 07.08.2006, 17:49 Uhr



Anmeldung: 09. Apr 2005
Beiträge: 203

1. Tag nach dem Urlaub
öhömm. Nit böse sein, aber ich glaube, daß keines von den beiden das tut, was Du glaubst:
Das erste macht nach jedem echo einfach ls. Der return von echo ist ja zumindest solange TRUE, solange echo was ausgeben kann.
Das zweite schreibt nach der echo-Ausgabe einfach 'ls'. Klar. Was auch sonst. in dem Ausdruck echo $x, ls wird eben das $x expandiert. Sonst nix.
BTW: ls ist eines der tools, das gerade keine Probleme mit Leerzeichen hat.

_________________
unsensibel, aber empfindlich
 
 Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden  
Antworten mit Zitat Nach oben
Kano
Titel: RE: @schnorrer  BeitragVerfasst am: 07.08.2006, 17:58 Uhr



Anmeldung: 17. Dez 2003
Beiträge: 16783

Du solltest meinen code nochmals angucken, in deinem Beispiel vergisst du IMMER die "" um "$x".
 
 Benutzer-Profile anzeigen Private Nachricht senden  
Antworten mit Zitat Nach oben
Witwe_Bolte
Titel: da brichsch zamm  BeitragVerfasst am: 08.08.2006, 00:50 Uhr



Anmeldung: 09. Apr 2005
Beiträge: 203

oder so. Cool

ne Woche später:
WOW: for x in */*/* geht auch. Wahnsinn. Mächtig.
Äh: Wie tief geht denn das? Da wüßte ich gar nicht wonach ich googeln sollte.

_________________
unsensibel, aber empfindlich
 
 Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden  
Antworten mit Zitat Nach oben
Beiträge vom vorherigen Thema anzeigen:     
Gehe zu:  
Alle Zeiten sind GMT + 1 Stunde
Neues Thema eröffnen   Neue Antwort erstellen
Vorheriges Thema anzeigen Druckerfreundliche Version Einloggen, um private Nachrichten zu lesen Nächstes Thema anzeigen
PNphpBB2 © 2003-2007 
 
Deutsch | English
Logos and trademarks are the property of their respective owners, comments are property of their posters, the rest is © 2004 - 2006 by Jörg Schirottke (Kano).
Consult Impressum and Legal Terms for details. Kanotix is Free Software released under the GNU/GPL license.
This CMS is powered by PostNuke, all themes used at this site are released under the GNU/GPL license. designed and hosted by w3you. Our web server is running on Kanotix64-2006.