我在我的 .bashrc 中设置了一个别名,如下所示:
alias u='cd ..'
在我的世界里一切都很好......直到我打字cd ..
并畏缩我没有使用我令人难以置信的新别名。事实上,对于这个特殊的东西,它是非常根深蒂固的。很难改变我的行为——我需要认真的干预。
所以,我很自然地尝试设置另一个别名来阻止我使用cd ..
:
alias 'cd ..'='echo "Use your alias!"'
但这显然行不通。我的想法是u
,在某种无限循环的别名中,这也可能以某种方式与别名冲突。
有任何想法吗?
Gil*_*il' 10
任何更复杂的事情,即为命令提供一些额外的参数对于别名来说太过分了,而是需要一个函数。使用builtin cd
调用原。
cd () {
if [ "$*" = ".." ]; then
echo 1>&2 'Use your alias instead!'
return 2
else
builtin cd "$@"
fi
}
Run Code Online (Sandbox Code Playgroud)
如果您正在运行 bash ?4.0,我会质疑这个特定别名的实用性。把shopt -s autocd
你的~/.bashrc
,并且只需键入..
或任何其他目录名来切换到它。
归档时间: |
|
查看次数: |
352 次 |
最近记录: |