Wie entferne ich das letzte Verzeichnis mit sed (nicht dirname ), so:
sed
dirname
Also würde ich /dir1/dir2/dir3 bekommen.
/dir1/dir2/dir3
Wenn es Teil des Shell-Skripts ist, dann wird dirname definitiv klarer.
Sie müssen keine externen Tools verwenden
$ a="/dir1/dir2/dir3/dir4"
$ echo ${a%/*}
echo "/ etc1 / etc2 / etc3 / etc" | sed -e "s // [^ /] * $ //"
erzeugt
/ etc1 / etc2 / etc3
Am Ende nach dem letzten Schrägstrich, der keinen weiteren Schrägstrich enthält, etwas entfernen.
Sie können den Shell-Befehl "dirname" verwenden:
Tags und Links shell path sed