Вопрос

Как мне извлечь последний каталог вывода pwd?Я не хочу использовать какие-либо знания о том, сколько уровней существует в структуре каталогов.Если бы я хотел использовать это, я мог бы сделать что-то вроде:

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

Но я хочу использовать команду, которая работает независимо от того, где я нахожусь в структуре каталогов.Я предполагаю, что есть простая команда для этого, используя awk или sed.

Это было полезно?

Решение

Вы ищете базовое имя или грязное имя?

Что - то вроде

basename "`pwd`"

должно быть то, что вы хотите знать.

Если вы настаиваете на использовании sed, вы также могли бы использовать

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

Другие советы

Если вы хотите сделать это полностью в скрипте bash без запуска каких-либо внешних двоичных файлов, ${PWD##*/} должно сработать.

Должно сработать на вас:pwd | rev | cut -f1 -d'/' - | rev

Ссылка:https://stackoverflow.com/a/31728689/663058

Использование awk:

pwd | awk -F/ '{print $NF}'
Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top