Vom einfachen Programm zum fertigen Debian-Paket, Fragen rund um Programmiersprachen, Scripting und Lizenzierung.
-
Tele
- Beiträge: 42
- Registriert: 10.06.2004 08:13:33
- Wohnort: Schladen
-
Kontaktdaten:
Beitrag
von Tele » 05.09.2004 21:24:58
Hallo
Ich bin leider nicht der Programmierer. So wende ich mich an euch.
In einem Verzeichnis habe ich viele Dateien, alle fangen mit tn_ an. Jetzt möchte ich dieses tn_ abschneiden. Also eigentlich den Befehl
automatisieren.
Könnt ihr mir dabei helfen?
Gruß
Tele
-
g-henna
- Beiträge: 733
- Registriert: 03.11.2003 14:59:56
- Wohnort: Berlin
Beitrag
von g-henna » 05.09.2004 21:47:30
Hi!
Ein Script schreiben:
Code: Alles auswählen
#!/usr/bin/python
import os
for file in os.listdir("."):
if not os.path.isfile(file): continue
newfile = file.split("_")[1]
os.system("mv "+file+" "+newfile)
(ungetestet) Geht bestimmt auch einfacher mit regulären Ausdrücken oder so. Aber egal, wenn du das Script jetz als move_all.py im entsprechenden Verzeichnis speicherst, kannst du es einfach mit
python move_all.py
ausführen und alle Dateien in dem Ordner heißen nur noch so wie nach dem ersten Unterstrich.
Bye
g-henna
follow the penguin...
-
Tele
- Beiträge: 42
- Registriert: 10.06.2004 08:13:33
- Wohnort: Schladen
-
Kontaktdaten:
Beitrag
von Tele » 05.09.2004 22:10:55
Es scheint zu funktionieren. Aber bei den Dateien, in denen ein zweiter '_' drin ist, werden auch gekürzt. Und es soll nur bis einschlißlich derm ersten Unterstrich gekürzt werden.
Kannst du das soweit auch ändern?
Gruß
Tele
-
domo
- Beiträge: 268
- Registriert: 11.07.2002 18:18:27
Beitrag
von domo » 05.09.2004 22:24:24
zeigt nur an. Falls ok
Have fun
/Edit: Bei Bedarf einfach überall t_ durch tn_ ersetzen, Dein Beitrag ist hier ein wenig inkonsistent....
Zuletzt geändert von
domo am 05.09.2004 22:27:34, insgesamt 1-mal geändert.
Freedom is the freedom to say that two plus two make four. If that is granted, all else follows.
-
iocus
- Beiträge: 55
- Registriert: 25.03.2004 19:49:54
- Wohnort: (CH)
Beitrag
von iocus » 05.09.2004 22:25:45
Code: Alles auswählen
#!/usr/bin/python
import os
for file in os.listdir("."):
if (file[0:3] == "tn_") and os.path.isfile(file):
newfile = file[3:]
os.system("mv "+file+" "+newfile)
...sollte gehen (auch ungetestet).
nur dateien mit tn_ am anfang werden umbenannt
-
C_A
- Beiträge: 1082
- Registriert: 22.04.2004 14:51:01
- Lizenz eigener Beiträge: GNU General Public License
Beitrag
von C_A » 05.09.2004 22:29:55
-
Tele
- Beiträge: 42
- Registriert: 10.06.2004 08:13:33
- Wohnort: Schladen
-
Kontaktdaten:
Beitrag
von Tele » 05.09.2004 23:37:55
Ja Mensch, das ist doch klasse!
Sowohl das Python Script, wie auch das massf2 hat gut funktuioniert.
Klasse!
Vielen Dank!
Gruß
Tele
-
roli
- Beiträge: 3174
- Registriert: 10.09.2003 17:39:58
Beitrag
von roli » 13.09.2004 14:38:29
Hi,
auch wenn es bis jetzt schon funktionierende Loesungen gibt, eine haette ich auch noch: mmv (Multiple Move). Nach der Installation sollte
genau das machen was du moechtest, das tn_ abschneiden.
Roland
"Aber wenn du schon so unwissend bist, davon noch nicht gehört zu haben,
so will ich es doch als gut ansehen, daß du lieber einmal töricht fragst,
als weiterhin nichts von etwas zu wissen, das man doch wissen sollte."
aus "Die Edda des Snorri Sturluson", "Gylfis Täuschung"