怎么让自定义的脚本文件在任何路径下输入文件名可直接运行

来源:互联网 发布:gta5优化补丁3dm 编辑:程序博客网 时间:2024/05/21 11:13

比如以这个脚本文件为例。是输出当前脚本所存放的路径
输出结果

/home/cindy/CustomBash
#!/bin/bashbasepath=$(cd `dirname $0`; pwd)DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )"#下面这个没用,DIR才能输出当前脚本文件所处目录#echo "$bashpath"echo "$DIR"

新建完了之后,chmod a+x test.sh
那么这个脚本可以在自己目录下面执行,但是当终端当前目录不是这个脚本所在目录后就会找不到。原因就是PATH路径中没有当前test.sh脚本文件所在路径。

第一:
最简单,将这个脚本文件赋值到/bin目录下面,这个目录是在PATH搜索路径下的。一般我希望对自定义脚本进行管理,不想跟系统脚本混在一起。

第二:
当前脚本存放在/home/cindy/CustomBash目录下
那么我们只要将这个目录添加到/etc/profile文件下PATH变量下,或者~/bashrc文件的PATH目录下;以/etc/profile为例
添加如下一行

export PATH=$PATH:${HOME}/CustomBash

然后执行

. /etc/profile

就可以了。

0 0