Вопрос Ярлык для возврата realpath символической ссылки?


Есть ли ярлык для возврата фактического пути символической ссылки?

вроде: я создал символическую ссылку в доме

$ cd
$ ln -s /home/usr/workspace/helloworld/datadir datadir
$ ls -l

lrwxrwxrwx  1 usr usr    10 Mar  5 16:57 datadir -> /home/usr/workspace/helloworld/datadir

Теперь,

$ cd datadir
$ pwd
/home/usr/datadir

Вот как можно вернуться к /home/usr/workspace/helloworld/ каталог без ввода всего пути

$ cd ../ 

Это возвращает меня в домашний каталог!


2
2018-03-05 11:36


происхождения




ответы:


Попробуйте эту команду,

readlink -f $(pwd)

readlink читает содержимое символической ссылки и readlink -f следует символическим ссылкам на символические ссылки на символические ссылки и т. д., пока не найдет что-то, что не является символической ссылкой.

Так,

cd $(readlink -f $(pwd))

ИЛИ

cd $(readlink -f .)

Вышеупомянутые команды позволяют перейти в исходный каталог.

Пример,

~ / Рабочий стол $ ls -l
lrwxrwxrwx 1 avinash avinash 22 Mar 4 14:11 Картинки -> / главная / avinash / Фотографии

~ / Desktop $ cd Картинки
~ / Рабочий стол / Картинки $ pwd
/ Главная / Авинаш / Desktop / Фотографии

~ / Desktop / Pictures $ readlink -f $ (pwd)
/ Главная / Авинаш / Фотографии

~ / Desktop / Pictures $ cd $ (readlink -f $ (pwd))
~ / Pictures $

2
2018-03-05 11:46



Спасибо, но не использовать! Я хочу вернуться в предыдущий каталог. как "cd .." - Laxmikant Ratnaparkhi
Говорить «не полезно» - это не очень хорошее отношение к тому, кто проводит свободное время, помогая вам. Это очень полезно, потому что вы должны запускать что-то вроде cd $(readlink -f $(pwd)) && cd .. чтобы сначала войти в «реальный» каталог, а затем двигаться вверх, вы бы сделали то, о чем попросили (я полагаю). Вы можете сделать это в псевдоним, если хотите сделать это много. - pzkpfw
не нужно запускать cd .. - Avinash Raj
Да, если вы хотите перейти на один шаг после перехода в «реальный» каталог, к которому обращалась символическая ссылка. (Это то, что я думаю, что он просил) - pzkpfw
@ bigbadonk420, Извините за мои слова! Saying "not of use" isn't a very nice attitude to have to someone who spends their free time helping you.  Спасибо за линию - Laxmikant Ratnaparkhi