Chinaunix首页 | 论坛 | 博客
  • 博客访问: 527308
  • 博文数量: 87
  • 博客积分: 1549
  • 博客等级: 上尉
  • 技术积分: 970
  • 用 户 组: 普通用户
  • 注册时间: 2011-03-14 16:56
文章分类
文章存档

2013年(10)

2012年(28)

2011年(49)

分类: LINUX

2011-03-21 00:28:54

通常,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]亦可实现。
 
但我还遇到echo $PATH 显示有所需命所在路径,但老是提示command not found(在编译内核才会出现,若是编译当个文件不会)不知道为什么
阅读(18904) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~