Мои псевдонимы bash перестали работать после недавнего обновления.

Но они все еще работают после source .bash_aliases.

У меня есть следующие строки в моем .bashrc:

if [ -f ~/.bash_aliases ]; then
    . ~/.bash_aliases
fi

Предполагается, что это эквивалентно типу source .bash_aliases, не так ли?

1
задан 4 March 2017 в 01:28

1 ответ

Из man [:

   -f FILE
          FILE exists and is a regular file

Поскольку вы создали ссылку .bash_aliases, этот тест не работает. Либо сделайте его обычным файлом, а не мягкой ссылкой или измените этот тест.

0
ответ дан 23 May 2018 в 00:58
  • 1
    Hmm ... man bash говорит "Если не указано иное, первичные элементы, которые работают с файлами, следуют символическим ссылкам и работают с целевым объектом ссылки, а не самой ссылкой. & Quot; , хотя – steeldriver 4 March 2017 в 06:04
  • 2
    @steeldriver хм, я просто попробовал это сам, и ты прав. Возможно, Dropbox делает что-то смешное для цели ссылки. – Joseph Sible 4 March 2017 в 06:09
  • 3
    Я попытался исправить это таким образом, и, к сожалению, это не сработало. – Benjamin 4 March 2017 в 22:25

Другие вопросы по тегам:

Похожие вопросы: