Linux Shell里的BASH_SOURCE

Linux Shell里的BASH_SOURCE

作用

BASH_SOURCE[0] 等价于 BASH_SOURCE ,取得当前执行的 shell 文件所在的路径及文件名

dirname 去除文件名中的非目录部分,仅显示与目录有关的部分

示例

1. 假如当前目录为/root/var,执行source ./test/bash_source.sh
# 当前路径 
[root@i var]# pwd
/root/var

# 新建文件夹和shell脚本
[root@i var]# mkdir test
[root@i var]# vim ./test/bash_source.sh 
2. 添加内容如下:
#!/bin/bash
# 取得当前执行脚本所在的路径及文件名
echo "${BASH_SOURCE[0]}"	# ./test/bash_source.sh

# 同上
echo "${BASH_SOURCE}" 		# ./test/bash_source.sh

# 父目录
echo "$( dirname "${BASH_SOURCE[0]}" )"		# ./test

# 使用pwd获取完整父目录的路径
DIR="$( cd "$( dirname ${BASH_SOURCE[0]} )" && pwd )"	# /root/var/test
echo $DIR
3. 执行脚本
[root@i var]# source ./test/bash_source.sh 
./test/bash_source.sh
./test/bash_source.sh
./test
/root/var/test

常用

# 使用pwd获取完整父目录的路径
DIR="$( cd "$( dirname ${BASH_SOURCE[0]} )" && pwd )"	# /root/var/test
echo $DIR
  • 7
    点赞
  • 13
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值