请教一个菜鸟问题,但是一直困扰我 ,请牛人顺手解答一下
当我写了一个脚本的时候,比如 a.bash ;我将该脚本设置为可执行了 chmod 700 a.bash
但是当输入$ a.bash 时 不会执行我的脚本 必须使用 $ ./a.bash 才行 请问这是什么原因? 两者有何区别? 谢谢!
但是当输入$ a.bash 时 不会执行我的脚本 必须使用 $ ./a.bash 才行 请问这是什么原因? 两者有何区别? 谢谢!
作者: zhtxwd 发布时间: 2011-06-16
./ 表示当前目录下, 这样sh就被指定在当前目录下查找脚本文件执行了
但是当输入$ a.bash 时 表示sh从PATH中搜索脚本来执行,而shell为了
安全,当前目录是不在PATH里的,所有搜索不到,自然也就不能执行,
这点跟windows是有区别的,bat默认是先搜索当前目录,然后再是path
但是当输入$ a.bash 时 表示sh从PATH中搜索脚本来执行,而shell为了
安全,当前目录是不在PATH里的,所有搜索不到,自然也就不能执行,
这点跟windows是有区别的,bat默认是先搜索当前目录,然后再是path
作者: liion631818 发布时间: 2011-06-16
./ 当前目录
作者: proghua 发布时间: 2011-06-16