在 oh-my-zsh 中,执行cd -
输出目标目录,这是多余的,因为我的 shell 提示符显示了相对工作目录。
我知道我可以这样做cd - > /dev/null
,但每次我都必须输入。有没有一种快速简便的方法来实现这一点,包括带数字的方法(例如cd -2
)?
我尝试设置setopt pushd_silent
,但没有成功。
以下是 oh-my-zsh 使用的配置:https://github.com/robbyrussell/oh-my-zsh/blob/master/lib/directories.zsh
答案1
function cd {
builtin cd "$@" > /dev/null
}
我使用上面的代码成功了。不过我不确定是否有更好的方法。
答案2
显然别名也可以起作用,重定向 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
(上面的提示首先打印当前目录)