Hallo, *ARGH* Da hat's mir die Mail verrupft... Komischerweise ist die Mail in sent-messages komplett... Also zweiter Versuch: On Sat, 28 Jun 2003, Jan Trippler schrieb:
On Sam, 28 Jun 2003 at 00:40 (+0200), David Haller wrote: [...]
echo "$file" | sed 's/.*\/\([^/]*\)$/\1/' echo "$file" | sed 's/\/[^/]*$//'
echo "$file" | sed 's#.*/\([^/]*\)$#\1#' echo "$file" | sed 's#/[^/]*$##'
ist IMHO übersichtlicher (nicht so viele Backslashes und man sieht besser, wo der Slash tatsächlich als Zeichen gebraucht wird)
Ack.
und außerdem funktioniert die dirname-Variante nicht, wenn kein Pfad existiert: jan@p4mobil:~/tmp> file=bash jan@p4mobil:~/tmp> echo "$file" | sed 's#/\[^/]*$##' ^ 's/\\//' ;) bash
Mir fällt im Moment auch keine sed-only-Variante ein, die das abfangen könnte. Dir? ;-)
Ja. *GRINS* SHELLPROMPT$ for f in /dir/file dir/file /file file; do echo "$f" | sed '/^\/[^/]*$/{s#.*#/#;b;};/\//{s#/[^/]*$##;b;};/^[^/]*$/{s#.*#.#;}'; done /dir dir /