2013-02-28 2 views
1

Когда я вхожуВзаимодействие zsh: как отлаживать?

$ echo $USER: 

я

robin: 

Какой штраф. Но когда я вхожу:

$ echo $USER:a 

я

/Users/robin/robin 

что

[MY_CURRENT_DIR]/[MY_USER_NAME]

Такое поведение кажется weired мне. Может ли кто-нибудь сказать мне, как отлаживать это? Я уже проверял псевдоним, но это не так.

ответ

2

The :a интерпретируется как модификатор по параметру $USER, рассматривая его как имя файла и преобразование его в абсолютный путь, предваряя ваш текущий каталог. Это описано в разделе об истории расширения в разделе zshexpn manpage в modifiers subsection.

Вы можете предотвратить это, окружив имя переменной фигурными фигурными скобками: ${USER}:a. В общем, это хорошая идея сделать это в любое время, когда после имени переменной появляется что-то , кроме пробега или символа котировки.

Смежные вопросы