gpt4 book ai didi

linux - 为 bash 设置默认命令

转载 作者:太空宇宙 更新时间:2023-11-04 09:43:44 24 4
gpt4 key购买 nike

假设我创建了自己的脚本,并且我希望该脚本成为在未找到命令时执行的默认命令,我该如何配置 bash 来实现这一点

例如。该命令称为 defCMD

假设我在命令行中输入一些随机字符串:

$ viosjaldfksajflsfa

通常它会输出'viosjaldfksajflsfa not found'

但是,我希望将“viosjaldfksajflsfa”作为参数输入到我编写的 defCMD 脚本中,而不是发生这种情况,因此让 bash 执行 defCMD。

有没有办法做到这一点?

最佳答案

我的 bash (Fedora) 有以下内容

$ type command_not_found_handle 
command_not_found_handle is a function
command_not_found_handle ()
{
runcnf=1;
retval=127;
[ ! -S /var/run/dbus/system_bus_socket ] && runcnf=0;
[ ! -x /usr/libexec/packagekitd ] && runcnf=0;
if [ $runcnf -eq 1 ]; then
/usr/libexec/pk-command-not-found $@;
retval=$?;
else
echo "bash: $1: command not found";
fi;
return $retval
}

您可以从这里开始并将其添加到您的.bashrc 文件中。更改 else 分支。

关于linux - 为 bash 设置默认命令,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18688223/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com