Отменить флаг по умолчанию
Как контекст. У меня есть папка, в которую я поместил ссылку $HOME каталог.
~> ls -s /var/www/to_link "$HOME/linked"
я cd в "$HOME/linked"
Итак, по умолчанию pwd показывает текущий каталог, включая символические ссылки. В этом случае это было бы /home/christopher/linked, Если я хочу вернуть его /var/www/to_link Я должен напечатать pwd -P, Обычно я нахожу эту вторую форму более полезной, чем первую, но мне бы хотелось, чтобы обе были доступны.
- Возможно ли иметь
pwdпо умолчанию включить-Pфлаг, а затем использовать другой флаг, чтобы включить символические ссылки? Так что в основном,pwdвернется/var/www/to_linkа такжеpwd -X(или какой-то другой флаг) вернет оригинал/home/christopher/linked,
1 ответ
И то и другое cd а также pwd есть варианты -P а также -L, Кажется, вы хотите использовать cd -P по умолчанию (который затем устанавливает $PWD в физический каталог, что затем влияет на приглашение bash и вывод pwd).
Вы можете поместить один из них в ваш.bashrc:
alias cd='cd -P'
cd () { builtin cd -P "$@"; }
Если вы хотите увидеть "~/ connected" в приглашении bash, вы будете использовать "логический" компакт-диск: cd -L ~/linked