linux中如何设置能使一个脚本在任意目录下都可直接运行,不要非到这个脚本所在目录下运行?

如题所述

b.sh shell 脚本的方法有多种,现在作个小结。假设我们编写好的shell脚本的文件名为hello.sh,文件位置在/data/shell目录中并已有执行权限。

一般来说,我都把这样的东西放在/usr/local/bin目录下,常用的系统这个都在path环境中
有些系统不把$home/bin放在path中,所以你在自己的bin目录下放的东西在别的目录下不见得可以执行。

我是远程登陆我们学院开的服务器,在上面做操作系统实验。


现在的问题是执行cp后,在我自己的bin目录下看不到该脚本。


这个bin目录是老师已经为各个用户建好了的,没有权限保护问题,因为执行cp时,没有出现错误。

温馨提示:内容为网友见解,仅供参考
第1个回答  2013-08-27
把这个脚本所在目录加入PATH环境变量中。
修改/etc/profile 加入一行:
export PATH=$PATH:/脚本目录/

或者修改 /etc/environment ,将目录加到PATH后面。
第2个回答  2013-08-27
脚本

#!/bin/bash
下添加
cd "$( dirname "${BASH_SOURCE[0]}" )"
相似回答