Shell中获取当前脚本的绝对路径: $( cd “$( dirname “${BASH_SOURCE[0]}“ )“ pwd)
Shell中获取当前脚本的绝对路径: $( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd)
参考链接:https://www.cnblogs.com/lestatzhang/p/10611309.html
另外:获取相对路径如下
#!/bin/bash
echo "$PWD"
$PWD是系统变量 (不需要定义)
示例代码
我们可以在bash中使用以下命令获取所执行脚本的绝对路径:
#!/bin/bash
DIR=$( cd "$(dirname "${BASH_SOURCE[0]}")" && pwd);
echo $DIR
代码解释
BASH_SOURCE[0] - 等价于 BASH_SOURCE ,取得当前执行的 shell 文件所在的路径及文件名
dirname - 去除文件名中的非目录部分,仅显示与目录有关的部分
$() - 相当于 `command`, 即获取command命令的结果
&& - 逻辑运算符号,只有当&&左边运行成功时才会运行&&右边的命令
总结
该命令获取脚本源文件的文件路径名,获取其目录部分,然后 cd 到该目录,使用 pwd 获取当前目录的完整路径,然后将这个路径的值赋给变量 DIR。
例如 /tmp/test/test.sh 内容如下:
#!/bin/bashecho "${BASH_SOURCE[0]}"
echo "${BASH_SOURCE}"
echo "$(dirname "${BASH_SOURCE[0]}")"
echo "$( cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
若在当前目录 /tmp 下执行 bash ./test/test.sh ,输出为:
lestat@Lestats-MBP:/tmp$ bash ./test/test.sh
test/test.sh
test/test.sh
test
/tmp/test
Shell中获取当前脚本的绝对路径: $( cd “$( dirname “${BASH_SOURCE[0]}“ )“ pwd)相关推荐
- Shell中获取脚本的绝对路径$( cd “$( dirname “${BASH_SOURCE[0]}“ )“ pwd)
文章目录 示例代码 总结 代码解释 示例代码 我们可以在bash中使用以下命令获取所执行脚本的绝对路径: #!/bin/bash DIR=$( cd "$(dirname "${B ...
- Shell中获取脚本的绝对路径$( cd $( dirname ${BASH_SOURCE[0]} ) pwd)
文章目录 示例代码 代码解释 总结 示例代码 我们可以在bash中使用以下命令获取所执行脚本的绝对路径: #!/bin/bash DIR=$( cd "$(dirname "${B ...
- Shell中获取当前脚本路径
第一种 DIR=$(cd $(dirname $0) && pwd ) echo $DIR 第二种 DIR2=$(cd $(dirname "${BASH_SOURCE[0] ...
- linux shell readlink,linux shell readlink 获取当前脚本文件绝对路径
当前脚本绝对路径:readlink -m $0 readlink命令简介 Linux中的readlink命令用于打印解析的符号链接或规范文件名.用简单的话来说,只要我们有一个符号链接,我们就想知道它代 ...
- 在shell 脚本中获取该脚本的所在目录
场景应该是这样的: 命令行获取文件所在路径,怎么办? cd 到文件目录,2 pwd 输出. 那么在 .sh 脚本执行时,怎么获取到该脚本的绝对路径呢? 使用dirname和{BASH_SOURCE[0 ...
- bash 获取脚本存放路径_如何获取Bash脚本自己的路径
bash 获取脚本存放路径 Bash script may need to get its own path. In normal Bash script, $0 is the path to the ...
- linux在shell中获取时间
linux在shell中获取时间 获得当天的日期 date +%Y-%m-%d 输出: 2011-07-28 将当前日期赋值给DATE变量 DATE=$(date +%Y%m%d) 有时候我们需要使用 ...
- (转)Shell中获取字符串长度的七种方法
Shell中获取字符串长度的七种方法 原文:http://blog.csdn.net/jerry_1126/article/details/51835119 求字符串操作在shell脚本中很常用,下面 ...
- 在shell中获取当前机器的ip地址
在shell中获取得到当前机器的ip地址 ifconfig | grep 'inet addr:' | grep -v '127.0.0.1' | cut -d: -f2 | awk '{ print ...
最新文章
- 声明式事务--@EnableTransactionManagement || @Transactional
- 丑憨批的html实战
- C语言第五章实验二答案,《C语言程序设计》实验二 参考答案
- php异步查询数据库,php中mysql数据库异步查询实现
- 数据结构--链表--约瑟夫环问题(单向循环链表)
- 软件测试工程师阶段_软件工程测试阶段
- Android--快速接入微信支付
- 使用python通过odbc处理*.dbf数据表
- floyd算法 每一层循环_链接列表循环检测– Floyd的循环查找算法
- 元素偏移量offset的学习
- Go语言-switch case | switch中判断多个值、interface conversion: interface {} is float64, not int
- 金庸笔下武功最强的十人
- Java学习笔记类对象多态继承(下)
- QT构建编译出现错误error: undefined reference to 的解决办法
- CentOS: Kernel panic - not syncing: Fatal exception
- h5实现上下滑动切页
- 概率dp 期望 逆推
- python自动标注autocad坐标_python 可视化 二维坐标标注等等
- spring中读取配置文件的方式,以及配置文件如何写
- android之view重绘,跟着郭大侠一步步深入了解View第三篇之Android视图状态及重绘流程分析...