shell problem

macropode

Member
eine ziemlich dumme und peinliche frage hab ich für euch.
ich will mit mv ein jpg umbenennen
Code:
mv 17strohdiemenbrand_holleben_29_09_04%20(1)_jpg.jpg 17strohbrand1.jpg

nur kommt immer die fehlermeldung:

Badly placed ()'s.


woran kann das liegen?
 
vermutlich an den Klammern...
Vermutlich ist die genannte Datei irgendwo unter Windows entstanden - ich kenne sonst kein OS, was solche besch...enen Dateinamen mit Sonderzeichen wie % oder () oder Leerzeichen benutzt. Hatte auch mal ein aehnliches Thema. Letztendlich hatte ich gluecklicherweise auch noch Zugriff von Windoof aus auf die Datei mit den Sonderzeichen und konnte so die Datei umbenennen. Tip fuer die Zukunft:
Keine Dateien mit solch besch...enen Namen mehr erzeugen!
 
das ist korrekt. die hat ein besucher der seite hochgeladen und möchte diese nun angezeigt bekommen. nunamer leider spinnt meine db und php rum. die beschwehren sich nämlich über die klammern!
 
gladiator said:
Vermutlich ist die genannte Datei irgendwo unter Windows entstanden - ich kenne sonst kein OS, was solche besch...enen Dateinamen mit Sonderzeichen wie % oder () oder Leerzeichen benutzt.
ROTFL! Ja, zurück zu MS-DOS. Oh mann! Unter FreeBSD kannst du jedes Zeichen benutzen, sogar Steuerzeichen, die man nichtmal über die Tastatur eingeben kann. Verboten ist nur der Schrägstrich. Welche Zeichen in einem Dateinamen benutzt werden, hängt dann vom Benutzer ab. Es ist vielleicht einfach, alles auf Windows zu schieben, aber es ist totaler Quatsch. Solche Zeichen kann man unter UNIX schon länger verwenden, als Windows als Betriebssystem auf dem Markt ist.

Hier ein besserer Tipp, auch an den OP: Lest ein grundlegendes UNIX-Buch. Da wird erklärt, die man Sonderzeichen maskiert. Außerdem gibt es noch so tolle Dinge wie die Tab-Taste und Wildcards - die kümmern sich auch um die Zeichen, die du nichtmal über die Tastatur eingeben kannst.
 
0815Chaot said:
Solche Zeichen kann man unter UNIX schon länger verwenden, als Windows als Betriebssystem auf dem Markt ist.

Leider. IMHO ist es eine ziemliche Unsitte Sonderzeichen in Dateinamen zu verwenden. Die Shell ist ein Klasse Werkzeug, aber wegen solchen Schwierigkeiten bastel ich mir für manche Aufgaben kleine binarys, weils z.T. wirklich ätzend ist mit solchen Namen zu jonglieren.

Wie auch immer, hier ist der Pösewicht IMHO das PHP-Script, dass die Dateien unter dem angegebenen Namen speichert. Die Eingabe kommt von einem User und ist daher mit Vorsicht zu geniessen. Besser einen eindeutigen Namen erzeugen, unter dem dann abspeichern und den ursprünglichen Namen nur in eine DB schreiben.


CU

Martin
 
Danke habe das problem etwas umständlicher lösen können.

werde mein php script umschreiben das sowas nicht nochmal passiert.

ps. viele wege führen nach rom manche auch über moskau! :)
 
Back
Top