现在的位置: 首页 > 综合 > 正文

./run.sh前面的点是用来干什么的?

2013年07月29日 ⁄ 综合 ⁄ 共 952字 ⁄ 字号 评论关闭

当bash执行某个程序时,它只从PATH中去找,如果这个程序不在PATH中,则需要给出具体路径,./run.sh前面的点即表示当前目录。

bash调用程序的几种形式:

1. 在PATH中,直接调用:run.sh

2. 不在PATH,给出完整路径:/tmp/run.sh

3. 不在PATH,给出相对路径:./run.sh

4. 不在PATH,将程序作为参数传给bash:sh run.sh

[root@rhel6-server tmp]# pwd
/tmp
[root@rhel6-server tmp]# cat run.sh

echo "hello world!"
[root@rhel6-server tmp]# ll
total 4
-rwxr-xr-x. 1 root root 20 Feb 28 00:20 run.sh
[root@rhel6-server tmp]# env | grep PATH
PATH=/usr/lib64/qt-3.3/bin:/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/root/bin
[root@rhel6-server tmp]# run.sh
-bash: run.sh: command not found
[root@rhel6-server tmp]# /tmp/run.sh
hello world!
[root@rhel6-server tmp]# ./run.sh
hello world!
[root@rhel6-server tmp]# sh run.sh
hello world!
[root@rhel6-server tmp]# PATH=.:$PATH
[root@rhel6-server tmp]# env | grep PATH
PATH=.:/usr/lib64/qt-3.3/bin:/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/root/bin
[root@rhel6-server tmp]# run.sh
hello world!
[root@rhel6-server tmp]#

REF:http://linux.vbird.org/linux_basic/0210filepermission.php#dir_path

抱歉!评论已关闭.