7

В настоящее время я нахожусь в каталоге символических ссылок, и я хочу подняться на один уровень по абсолютному пути, но я не могу, так как он вернет меня обратно в мой домашний каталог (~). Я могу сделать pwd -P, чтобы получить абсолютный путь, но как мне передать результат в команду cd? Я всегда думал, что это было так: {}

Образец:

10:21:55 {master *} ~/ch$ pwd -P 
/home/drupal/sites/all/themes/house

10:22:16 {master *} ~/ch$ pwd -P | cd {}
bash: cd: {}: No such file or directory

10:22:20 {master *} ~/ch$ 

2 ответа2

9

Это работает для меня:

cd `pwd -P`

Вы также можете использовать cd -P следующим образом:

cd -P ~/ch

или если вы уже находитесь в каталоге с символическими ссылками:

cd -P .
3

Вы можете вставить вывод какой-либо команды в командную строку с помощью оператора подстановки команд $(...) .

Например, это пойдет в текущий текущий рабочий каталог (все символические ссылки разрешены):

cd $(pwd -P)

Чтобы подняться на один уровень (ваша конечная цель, как я понял):

cd $(pwd -P)/..

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .