为什么要在linux命令前加上 ./ ?

简述

执行unix或linux中除了path系统变量外的目录下的命令都要加./。

修改用户的 .bash_profile,在 PATH一行最后加上 “:.” (一个冒号,一个点) ,然后退出重新登陆用户就ok了! PATH中没有定义路径,加上就ok了。

./表示当前目录,这是因为linux的默认搜索目录里没有当前目录,所以如果你在当前目录需要执行程序就要加上路径./,用全路径代替也是可以的。

win/dos的默认搜索路径里有当前目录,所以不需要加。其实加上也是一样的效果。

什么时候才需要在命令前加上./ ? 

比如:

cd /etc/init.d

运行:sshd,系统没有什么反应也不出错,而只有加上./ 后,如 ./sshd 才会出提示如:

用法:./sshd {start|stop|restart|reload|condrestart|status}

这是怎么回事,而有的时候却两者都可以。

“.”表示当前目录,“./”表示执行当前目录下可执行文件。

首先,你运行了两个sshd,都没有报错,说明两个命令都可以。 一开始的sshd应该是/usr/sbin/下面的sshd命令。 第二次的sshd是/etc/init.d/下的一个脚本,不是二进制可执行文件。

linux优先查找PATH环境变量下的路径,和m$有点不一样。环境变量可以用echo $PATH命令查看。

总之,执行unix或linux中除了path系统变量外的目录下的命令都要加./。

» 文章出处: reille博客—http://velep.com , 如果没有特别声明,文章均为reille博客原创作品
» 郑重声明: 原创作品未经允许不得转载,如需转载请联系reille#qq.com(#换成@)
分享到:

 Leave a Reply

(必须)

(我会替您保密的)(必须)

*

This site uses Akismet to reduce spam. Learn how your comment data is processed.

   
© 2012 velep.com | reille blog | 管理| 粤ICP备15065318号-2| 谷歌地图| 百度地图| Suffusion theme|Sayontan Sinha

无觅相关文章插件,快速提升流量