Почему `source ~ / .aliases` не работает в .zshrc?

372
le_me
user@localhost ~ % zsh --version zsh 5.5.1 (x86_64-redhat-linux-gnu) me@localhost ~ % lsb_release -a LSB Version: :core-4.1-amd64:core-4.1-noarch Distributor ID: Fedora Description: Fedora release 28 (Twenty Eight) Release: 28 Codename: TwentyEight 

~/.zshrc:

... Details omitted ... source ~/.aliases cat ~/.aliases ... Details omitted ... 

командная строка:

user@localhost ~ % zsh alias ls='exa' alias grep='rg' user@localhost ~ %  

Так ~/.zshrcвыполнено, но псевдонимы не дали никакого эффекта.

Это работает, если я бегу source ~/.aliasesв оболочке.

Я пытался часами без удачи. Есть идеи?

0
ты был прав! мой zshrc содержал псевдонимы для grep и ls. благодарю вас! если хотите, можете добавить ответ, который я приму, так что вы получите своего заслуженного представителя;) le_me 6 лет назад 0
В этом случае _Details_ имеет значение `;)` mpy 6 лет назад 0

1 ответ на вопрос

2
Kamil Maciorowski

Скорее всего, то, что получено позже, изменяет эти псевдонимы.

Добавьте alias sanitycheck='echo sane'к вашему ~/.aliasesи запустить sanitycheckв ~/.zshrcисточнике только после вас ~/.aliases. Войдите в систему заново. Если вы получите, saneто вы будете знать, source ~/.aliasesработал.

Расследуйте, что происходит позже у вас ~/.zshrc. Надеюсь, вы найдете другие псевдонимы для lsи grep.

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