Re: Wie kann ich einfach Dateinamen überprüfen
Marcus Röckrath <[email protected]>
| Newsgroups | spline.fli4l.geschnatter |
|---|---|
| Message-ID | <[email protected]> |
Hallo Nelson, Nelson Matias wrote: >>Ich würde hier wohl mit sed arbeiten: >> >>name=$(head -n 1 "$i/story.txt" | sed -e s/<fromstring1>/<tostring1>/g -e >>s/<fromstring2>/<tostring2>/g -e ...) >> > > also quasi > > sed -e s/: / - /g \ > -e s/&/and/g \ eis:~/tmp # echo "&" | sed -e 's/\&/-/g' - eis:~/tmp # echo "&" | sed -e 's/&/-/g' - Offensichtlich ist es egal, ob man das & qouted, würde ich aber wohl eher machen, weil das ja normalerweise etwas gänzlich anderes bedeutet - nicht das sich da mal was verschluckt. > -e s/[!"$'*/:;<>?@\´`^°|]/_/g Da / auch im String vorkommt, nimm als Trenner was anderes, z. B.: -e s#[!"$'*/:;<>?@\´`^°|]#_#g Vergas in meinem Beispiel, das s/.../.../g in ' zu setzen - auch das ist nicht immer notwendig, aber ich tue es meist. Allerdings funktioniert das mit 's...g' in deinem letzten sed-Kommando nicht, das ' in fromstring vorkommt und auch escapen hier nicht hilft. Zudem musste ich eigentlich alles im fromstring escapen. Ich würde da nicht lange fackeln und jedes Char escapen. Ansonsten würde ich mit Testdaten mal sehen, ob die Konvertierung so wie gewünscht funktioniert. Anlegen einer oder mehrerer story.txt mit einer ersten Zeile, die so ziemlich jeden Blödsinn enthält und schauen, ob das Endergebnis dem Wunsch entspricht. -- Gruß Marcus [eisfair-Team]