有没有办法拦截 ZSH 中的“找不到命令”错误?我已经看到这显然在 bash 中是可能的,但是我在 zsh 中找不到任何关于这样做的信息。
因此,当未找到命令时,“您的意思是:”列表是通过什么方式填充的?什么程序可以找到这些替代命令?什么意思:“(主),(宇宙)……”?我可以更改哪个程序找到这些吗?
我想让一个特定的 bash 脚本在找不到命令时快速失败,同时在全局范围内保留通常友好的 command_not_found 行为。例如,如果我将以下内容保存到/tmp/foo.sh
...
# ----------------------------start foo.sh----------------------------
THIS_FP="$0"
THIS_FN="$(basename ${THIS_FP})"
THIS_DIR="$(dirname ${THIS_FP})"
function setup {
for CMD in \
'foo' \
; do
echo -e "\n$ ${THIS_FN}::${FUNCNAME[0]}::${CMD}"
eval "${CMD}"
done
} # end function setup
function teardown {
for CMD in \
"ls -alt ${THIS_DIR} | head" \
; do
echo -e "\n$ ${THIS_FN}::${FUNCNAME[0]}::${CMD}"
eval "${CMD}"
done
} # end function teardown
for CMD in \
'setup' \
'teardown' \
; do
echo -e "\n$ ${THIS_FN}::main loop::${CMD}" …
Run Code Online (Sandbox Code Playgroud) 我想知道是否可以在 vim 中打开 python 文件,而无需在它前面输入“vim”。例如: 而不是:
vim filename.py
Run Code Online (Sandbox Code Playgroud)
简单地
$ filename.py
Run Code Online (Sandbox Code Playgroud)
将在vim中打开文件。
我相信它不是 upto .vimrc
but.bashrc
或.zshrc
(在我的情况下),它会将.py
文件解释为可执行文件vim
或其他东西。我正在使用 ubuntu (wsl2) 和 zsh (oh-my-zsh)。之前可能有人问过这个问题,但我找不到这样的问题。谢谢你。