zsh能否读取保留的终端关键字?
通常,如果我在shell(zsh)中键入“clear”,则显示的内容将被清除 这就是我想做的 如果我输入'clear',shell将被清除,并记录一些我打算发出的消息 所以我修正了zsh能否读取保留的终端关键字?,zsh,Zsh,通常,如果我在shell(zsh)中键入“clear”,则显示的内容将被清除 这就是我想做的 如果我输入'clear',shell将被清除,并记录一些我打算发出的消息 所以我修正了.zshrc如下所示 clear() { read REPLY if[[[ $REPLY =~ "clear"]] then echo "some message" fi } 因此,我希望如果我键入“clear”,shell上的内容将被清除,并且还会提示“someme
.zshrc
如下所示
clear()
{
read REPLY
if[[[ $REPLY =~ "clear"]]
then
echo "some message"
fi
}
因此,我希望如果我键入“clear”,shell上的内容将被清除,并且还会提示“somemessage”
但只有“一些信息”才出来
如何读取保留的“清除”命令,而不是字符串本身?您的函数无法清除屏幕。为此,必须发出
clear
命令。但由于您的函数也被称为clear
,只需在函数中键入clear
,就会导致无限递归。作为解决方案,使用
command clear
相反。前缀
command
绕过函数定义。请修复发布中的语法错误(即if
语句)。谢谢,你的意思是clear(){read REPLY if[[$REPLY=~command clear]]然后回显“some message”fi}如果我使用command clear而不是clear(){},实际清除不会发生,而不是clear(){}
。这毫无意义!在回显
之前执行命令清除
。