Frage

Wie extrahiere ich das letzte Verzeichnis einer PWD -Ausgabe? Ich möchte keine Kenntnisse darüber nutzen, wie viele Ebenen in der Verzeichnisstruktur enthalten sind. Wenn ich das verwenden wollte, könnte ich so etwas tun wie:

> pwd
/home/kiki/dev/my_project
> pwd | cut -d'/' -f5
my_project

Aber ich möchte einen Befehl verwenden, der unabhängig davon, wo ich in der Verzeichnisstruktur bin, funktioniert. Ich gehe davon aus, dass es einen einfachen Befehl gibt, dies mit awk oder sed zu tun.

War es hilfreich?

Lösung

Suchen Sie Grundname oder Dirname?

Etwas wie

basename "`pwd`"

Sollte das sein, was Sie wissen möchten.

Wenn Sie darauf bestehen sed, Sie könnten auch verwenden

pwd | sed 's#.*/##'

Andere Tipps

Wenn Sie es in einem Bash -Skript vollständig tun möchten, ohne externe Binärdateien auszuführen, ${PWD##*/} sollte arbeiten.

Sollte für Sie arbeiten:pwd | rev | cut -f1 -d'/' - | rev

Bezug:https://stackoverflow.com/a/31728689/663058

Verwenden Sie awk:

pwd | awk -F/ '{print $NF}'
Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top