unclechu
@unclechu

Как саставить BASH/ZSH заменять относительные пути на абсолютные?

Ситуация такова: работаю с симлинком на директорию, выше уровнем этого симлинка есть некий файл. Пытаюсь вызвать "mv" и перенести файл в текущий каталог:
symbolic_link_to_dir $ mv ../somefile .
Но получаю ошибку о том, что файла ../somefile не существует, не смотря на то, что auto-complete работал. Новичка такое поведение вообще может ввести в ступор и глубокое непонимание происходящих процессов. А по факту "mv" считывает реальный inode директории и идёт выше по уровню именно него, а не символической ссылки.

Вопрос в том: как мне сделать так, чтобы происходил подъём выше по уровню именно относительно символической ссылки, то-есть текущего каталога. Чтобы по факту происходило что-то вроде:
symbolic_link_to_dir $ mv `pwd -L`/../somfile .

UPD: если такое вообще возможно например на ZSH, — прошу в студию.
  • Вопрос задан
  • 2642 просмотра
Пригласить эксперта
Ответы на вопрос 2
BuriK666
@BuriK666
Компьютерный псих
readlink -em filename
Ответ написан
steep-user
@steep-user
user@debian ~ % ls -ld ./Загрузки          
drwx------ 2 user user 4096 Фев 15 11:35 ./Загрузки
user@debian ~ % ln -s ./Загрузки ./blabla
user@debian ~ % ls -l ./blabla 
lrwxrwxrwx 1 user user 18 Фев 15 11:37 ./blabla -> ./Загрузки
user@debian ~ % cd ./blabla 
user@debian ~/blabla % mv ../zfsonlinux_4_all.deb .
user@debian ~/blabla % ls -l         
итого 1996
-rw-r--r-- 1 user user 2040076 Дек 17 18:00 zfsonlinux_4_all.deb
user@debian ~/blabla % cd -
~
user@debian ~ % mkdir ./Загрузки/tmpdir
user@debian ~ % mv blabla/zfsonlinux_4_all.deb .
user@debian ~ % rm ./blabla 
user@debian ~ % ln -s ./Загрузки/tmpdir ./blabla 
user@debian ~ % cd blabla 
user@debian ~/blabla % mv ../../zfsonlinux_4_all.deb . 
user@debian ~/blabla % ls -l
итого 1996
-rw-r--r-- 1 user user 2040076 Дек 17 18:00 zfsonlinux_4_all.deb
user@debian ~/blabla %


Что я не так делал, что у меня проблем нет?
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы