Ответ 1
Вы ищете базовое имя или dirname?
Что-то вроде
basename "'pwd'"
должно быть то, что вы хотите знать.
Если вы настаиваете на использовании sed
, вы также можете использовать
pwd | sed 's#.*/##'
Как извлечь последний каталог вывода pwd? Я не хочу использовать какие-либо знания о том, сколько уровней в структуре каталогов. Если бы я хотел использовать это, я мог бы сделать что-то вроде:
> pwd
/home/kiki/dev/my_project
> pwd | cut -d'/' -f5
my_project
Но я хочу использовать команду, которая работает независимо от того, где я находилась в структуре каталогов. Я предполагаю, что есть простая команда для этого, используя awk или sed.
Вы ищете базовое имя или dirname?
Что-то вроде
basename "'pwd'"
должно быть то, что вы хотите знать.
Если вы настаиваете на использовании sed
, вы также можете использовать
pwd | sed 's#.*/##'
Если вы хотите сделать это полностью в bash script без запуска каких-либо внешних двоичных файлов, ${PWD##*/}
должен работать.
Должно работать для вас:
pwd | rev | cut -f1 -d'/' - | rev
Ссылка: fooobar.com/questions/169554/...
Использование awk:
pwd | awk -F/ '{print $NF}'