菜鸟提问:文件执行权限和方式的疑惑?
比如我在自己的目录下有一个run的文本文件,
其内容为 echo "test for run!"
且已经添加了自己对该文件的有执行的权限
为什么输入run,提示没有这个命令
(就算没有预先设置路径吧,拷贝到bin还是不行,估计因为这个是文本文件,bin里其他的二进制文件,我想)
而输入./run,就可以了?
这个“./”是怎么来的?作用到底是什么?
刚刚接触unix/linux领域,对这点非常困惑
问题点数:40、回复次数:2Top
1 楼sharkhuang(走吧走吧!人总会慢慢长大~)回复于 2005-08-25 09:50:36 得分 15
./是path 当前路径而已 你可以在set PATH=$PATH:./
就可以直接执行run了。Top
2 楼hux(孤翼)回复于 2005-08-25 13:02:19 得分 25
为什么输入run,提示没有这个命令
----------------
默认情况下,系统是不搜索当前目录的,而只搜索PATH变量里定义的路径,所以找不到
你可以在PATH里添加当前目录(.)
就算没有预先设置路径吧,拷贝到bin还是不行
-----------
注销再登陆就OK了
./run
-----------
表示当前目录下的run
这样做的原因同第一点
所以当脚本或者命令不在预设路径下时,就要给出它的路径,相对或绝对都可以
比如
../run 执行上级目录中的run
hhh/run 执行当前目录下的hhh目录中的run
/tmp/run 执行/tmp下的runTop




