Ich möchte eine Anzahl von Dateinamen per Wildcard an ein Skript übergeben. script.py * file1, file2, file3, .. glob.glob('*') ergibt eine Liste mit allen Dateinamen argv[1] enthält jedoch nicht '*' sondern die erste Datei - die Shell macht mir einen Strich durch die Rechnung.
Jubb, das macht sie. Die macht nämlich genau das, was in der Anleitung beschrieben ist. Und weiter?
Hat sich geklärt - ich hatte nicht verstanden, dass anstelle von * die Dateinamen mit Leerzeichen getrennt übergeben werden, und dann von Python als einzelne Argumente in argv stehen. Kann nicht mehr nachvollziehen, was ich erwartet hatte.
Setz das * mal in Anführungszeichen, wenn du es übergibst, oder stell einen Rückstrich davor.
Sven P. schrieb: > Setz das * mal in Anführungszeichen, wenn du es übergibst, oder stell > einen Rückstrich davor. Geht zwar, ist aber eine denkbar schlechte Lösung. Erstens würde sich das Programm dann genau anders als die anderen 10^99 Unix-Tools verhalten, und zweitens verlierst (*) du dadurch die Möglichkeit Dateien zu bearbeiten, die ein '*' oder '?' im Dateinamen tragen. Also: Unter Windows macht das Auflösen der Dateinamen das aufgerufene Programm, hier ist dein glob.glob - Aufruf korrekt, unter Unix macht das immer (**) die Shell. *) erschwerst es zumindest. **) Ja, es gibt Ausnahmen, wie bei jeder Regel. Bekannteste ist vermutlich "find"
Ernst Bachmann schrieb: > Sven P. schrieb: >> Setz das * mal in Anführungszeichen, wenn du es übergibst, oder stell >> einen Rückstrich davor. > > Geht zwar, ist aber eine denkbar schlechte Lösung. > [...] Das unterschreibe ich.
hallole zusammen, hat jemand schon mal mit einem rad-tool (lazarus, kdevelop, gambas, usw.) unter linux gearbeitet ? ich suche jemanden der erfahrung im erstellen von gui-applikationen mit io per serieller schnittstelle hat. jedenfalls will ich nicht wie die alten griechen auf kommendozeile rumwursteln. mein projekt: selectrix für linux - aber bitte mit gui! (modellbahner wissen was gemein ist) grüße butronik
Mach doch bitte einen eigenen Thread auf und klau nicht einfach einen anderen.
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.