zsh 中奇怪的函数声明(或者是?)
Weird function declaration (or is it?) in zsh
我试图通过在 zsh 中创建文件名来查找某些文件(尽管我多次阅读联机帮助页我没有真的现在我在做什么),但我认为有些事情发生了大错特错:
在我输入 echo 10-02-2015.*()
后,系统提示我输入一些东西 — zsh 输出 function>
。我随机输入 n
,然后按回车。
但在那之后,我执行的每个命令都会附加“echo:16: command not found: n”,这似乎是我用一个空函数名定义了一个函数,但我不明白这有什么意义。
考虑到这一点:这里到底发生了什么,我该如何恢复?
快速浏览 zsh 似乎表明 echo:16: command not found: n
的第一位是失败的命令(数字是会话的提示号或其他什么?)。
因此,无论您做什么,似乎都将 echo
重新定义为 shell 试图调用 n
的函数(这显然不存在)。
我怀疑 type -f echo
会证实这一点,并且 echo "foo"
目前无法正常工作。
您应该能够简单地启动一个新的 zsh 会话来 "fix" 问题。
或者,unset -f echo
似乎也有效。
我试图通过在 zsh 中创建文件名来查找某些文件(尽管我多次阅读联机帮助页我没有真的现在我在做什么),但我认为有些事情发生了大错特错:
在我输入 echo 10-02-2015.*()
后,系统提示我输入一些东西 — zsh 输出 function>
。我随机输入 n
,然后按回车。
但在那之后,我执行的每个命令都会附加“echo:16: command not found: n”,这似乎是我用一个空函数名定义了一个函数,但我不明白这有什么意义。
考虑到这一点:这里到底发生了什么,我该如何恢复?
快速浏览 zsh 似乎表明 echo:16: command not found: n
的第一位是失败的命令(数字是会话的提示号或其他什么?)。
因此,无论您做什么,似乎都将 echo
重新定义为 shell 试图调用 n
的函数(这显然不存在)。
我怀疑 type -f echo
会证实这一点,并且 echo "foo"
目前无法正常工作。
您应该能够简单地启动一个新的 zsh 会话来 "fix" 问题。
或者,unset -f echo
似乎也有效。