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]
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.