“command not found ”是什么意思?

2025-03-03 18:33:25
推荐回答(1个)
回答1:

意思是:找不到执行文件或者命令脚本的路径。

通常,command not found是系统不能找到执行命令的路径引起的。

  • 拿命令ifconfig来说,如果没有把:/sbin追加到环境变量,直接输入ifconfig命令是不能执行的,输入/sbin/ifconfig才能执行。

  • 通过whereis ifconfig可得知ifconfig所在路径是/sbin/ifconfig,即在sbin目录下。

  • 如果环境变量中没有设置/sbin,则会显示command not found,如果不设置环境变量并企图先进入/sbin目录再执行ifconfig命令是不会成功的,因为系统不会主动搜索当前目录下的文件,它不关心你的当前目录在哪儿,只会搜索环境变量。

  • 不设置环境变量是否就意味不能使用ifconfig命令了呢?显然不是,如果不设置环境变量/sbin,你仍然可通过如下方法执行ifconfig命令:cd /sbin; ./ifconfig 。“./ ”告诉系统不用搜索环境变量,直接就在当前目录下执行命令,作用等同于/sbin/ifconfig。

    总结起来,可通过两种方法解决command not found问题。第一种,设置环境变量,如果不知某个命令所属目录,whereis [command]可查看。第二种,不用设置环境变量,进入命令所属目录,./[command]亦可实现。

参考资料

百度翻译.百度翻译[引用时间2018-1-18]

Linux教程.Linux公社[引用时间2018-1-18]