Не показывать вывод "cd - <#>"

397
user1164937

В oh-my-zsh cd -выводит целевой каталог, который является избыточным, так как моя подсказка оболочки показывает относительный рабочий каталог.

Я понимаю, что могу cd - > /dev/null, но мне придется печатать это каждый раз. Есть ли быстрый и простой способ сделать это, в том числе с номерами (например, cd -2)?

Я пытался установить setopt pushd_silent, но не повезло.

Вот конфигурация, которую использует oh-my-zsh: https://github.com/robbyrussell/oh-my-zsh/blob/master/lib/directories.zsh

0
Почему вы печатаете `cd -`? У вас есть каталог с именем `-`, в который вы хотите перейти? Xen2050 6 лет назад 0
@ Xen2050 `cd -` изменится на предыдущий каталог ... вы можете использовать его для переключения вперед и назад. Attie 6 лет назад 0
Интересно, спасибо. Я подумал, что `help cd` (не упомянул тире) был бы примерно таким же, как в` man bash` (где он говорит, что `-` расширяется до $ OLDPWD) Xen2050 6 лет назад 0

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

2
user1164937
function cd { builtin cd "$@" > /dev/null  } 

Я получил это работает с кодом выше. Не уверен, что есть лучший способ.

0
Xen2050

Очевидно, псевдоним тоже работает, перенаправляет stdout и оставляет stderr:

~/Downloads$ alias cd bash: alias: cd: not found ~/Downloads$ alias cd='cd >/dev/null' ~/Downloads$ cd ~/Videos ~/Videos$ cd - ~/Downloads$ cd fake bash: cd: fake: No such file or directory 

(подсказка выше печатает текущий каталог первым)

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