Hallo Group,
ich habe ein kleines Problem mit id3v2 und Sonderzeichen.
folgende Syntax schreibt einen Artist-Name in die mp3:
id3v2 -a "artistname" test.mp3
wenn nun im artistname zeichen wie: ` ! " enthalten sind gibt es natürlich einen error ... diese Zeichen kann ich nun mit einem Backslash maskieren.
Im id3tag sind die backslashes dann auch nicht zu sehen ... bis auf: ! .. bei Backslash-Ausrufezeichen stehen beide zeichen im id3tag.
Ein Ausrufezeichen muss aber maskiert werden weil ich sonst einen Fehler bekomme.
Nun meine Frage: gibt es einen shell befehl ala addslashes oder ähnliches --- in der shell müssen ja andere zeichen als bei php maskiert werden.
Mein Shell-Script baue ich mit PHP zusammen und führe es später aus ... ich könnte nun im PHP alles "böse" mit str_replace ersetzen .. dann bleibt aber noch das ausrufezeichen welches die shell in meinem Fall falsch interpretiert.
andersherum bei: id3v2 -a 'artistname' test.mp3 (einfaches hochkomma) welches vielleicht die elegantere Lösung ist, kann ich ein einfaches hochkomme nicht mit backslash maskieren ... sonst frisst diese syntax alle sonderzeichen --- wie maskiert man hier ein hochkomma im artistname?
vielleicht ist die Lösung einfach ... pls help
mike
shell sonderzeichen maskieren
Re: shell sonderzeichen maskieren
Bei Single Quotes kannst du nihts so einfach escapen.
echo 'aaa'''bbb'
Somit bekommt man ein ' Zeichen rein. Eigentlich sind es zwei single quotes mit einem escapten ' dazwischen.
echo 'aaa'''bbb'
Somit bekommt man ein ' Zeichen rein. Eigentlich sind es zwei single quotes mit einem escapten ' dazwischen.
Re: shell sonderzeichen maskieren
Also in der Shell History Expansion ausstellen?Enclosing characters in double quotes preserves the literal value of all characters within the quotes, with the exception of $, ‘, , and, when history expansion is enabled, !.
Re: shell sonderzeichen maskieren
danke ... hat geholfen