bash shell:获取当前脚本的绝对路径(pwd/readlink)
有时候,我们需要知道当前执行的输出shell脚本的所在绝对路径,可以用dirname实现。
我们知道 dirname 可以获取一个文件所在的路径,dirname的用处是:
输出已经去除了尾部的”/”字符部分的名称;如果名称中不包含”/”,
则显示”.”(表示当前目录)。
下面是dirname的命令行说明:
从上面的描述可知道,直接从dirname返回的未必是绝对路径,取决于提供给dirname的参数是否是绝对路径。
所以下面这样的代码中SHELL_FOLDER
中不一定是绝对路径
SHELL_FOLDER=$(dirname "$0")
需要用cd和pwd命令配合获取脚本所在绝对路径,正确的写法是这样的,
SHELL_FOLDER=$(cd "$(dirname "$0")";pwd)
如果你觉得上面的写法比较麻烦,还有一个方式获取脚本的绝对路径,就是借助readlink命令,下面是readlink的命令行说明:
所以用readlink命令我们可以直接获取$0参数的全路径文件名,然后再用dirname获取其所在的绝对路径:
SHELL_FOLDER=$(dirname $(readlink -f "$0"))
参考:
http://my.oschina.net/leejun2005/blog/150662
http://blog.csdn.net/zz198808/article/details/9319479
bash shell:获取当前脚本的绝对路径(pwd/readlink)相关推荐
- Shell中获取当前脚本的绝对路径: $( cd “$( dirname “${BASH_SOURCE[0]}“ )“ pwd)
Shell中获取当前脚本的绝对路径: $( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd) 参考链 ...
- shell 获取运行脚本所在目录
可以使用以下命令来获取shell脚本所在目录: #!/bin/bash # 获取当前脚本所在目录 current_dir=$(cd $(dirname $0); pwd) echo $current_ ...
- linux脚本获取当前用户,bash shell 获取当前正在执行脚本的绝对路径
一般我们写Shell脚本的时候,都倾向使用绝对路径,这样无论脚本在什么目录执行,都应该起到相同的效果,但是有些时候,我们设计一个软件包中的工具脚本,可能使用相对路径更加灵活一点,因为你不知道用户会在哪 ...
- linux shell readlink,linux shell readlink 获取当前脚本文件绝对路径
当前脚本绝对路径:readlink -m $0 readlink命令简介 Linux中的readlink命令用于打印解析的符号链接或规范文件名.用简单的话来说,只要我们有一个符号链接,我们就想知道它代 ...
- shell获取执行脚本路径
#!/bin/bashBASEPATH=$(cd `dirname $0`; pwd)
- linux shell获取当前脚本所在目录
1 . 获得shell脚本所在的绝对路径 CURRENT_DIR=$(cd $(dirname $0); pwd) 或者 CURRENT_DIR=$(cd `dirname $0`; pwd) 执行步 ...
- linux执行windows创建的脚本,如何在Windows 10上创建和运行Bash Shell脚本 | MOS86
随着Windows 10的到来您还可以将Bash命令合并到Windows批处理文件或PowerShell脚本中. 如果你知道你是什么Windows和UNIX使用不同的行尾字符,Windows文件系统可 ...
- shell 获取ora报错信息_带你了解企业是如何编写脚本的-第2篇:Shell脚本规范
在带你了解企业是如何编写脚本的-第一篇:认识脚本这篇文章中,我对脚本进行了一些基本的讲解,那么今天我们就来了解一下Shell脚本有哪些规范(约定俗成). 俗话说无规矩不成方圆,想要长远的发展就需要制定 ...
- 在shell 脚本中获取该脚本的所在目录
场景应该是这样的: 命令行获取文件所在路径,怎么办? cd 到文件目录,2 pwd 输出. 那么在 .sh 脚本执行时,怎么获取到该脚本的绝对路径呢? 使用dirname和{BASH_SOURCE[0 ...
最新文章
- 51Nod1556 计算
- boxfilter 函数
- java url参数转换:_提示:通过URL激活并发送参数
- 使用Chameleon,Shrinkwrap,Drone / Graphene与Arquillian进行Java EE集成测试
- 笨办法学linux dhcp,iptables使用指南(上)
- prev php,PHP prev() 函数 ——jQuery中文网
- BAPI:BAPI_PRODORDCONF_CREATE_TT (TCODE:CO11N)
- nofollow标签_SEO技术动态:谷歌升级Nofollow标签的作用
- C#之xml配置文件读写
- 工具类网站推荐:实用工具汇总共30000个,速收藏
- 2022-2027年中国SPA水疗行业市场调研及未来发展趋势预测报告
- 国家测绘法宣传日专题知识分享
- 小巷开店问题(第三题)
- html让video元素居中,CSS实现元素居中的五种方法
- 四年级计算机入门教案,四年级下册计算机教案
- 深度学习(五):对对联,根据上联,对下联
- 荐书|《DBT技巧训练手册》:宝贝,你就是你活着的原因
- 不写默认无参构造方法,调用自定义构造方法时报错No constructor found in com...
- 使用nid工具修改db_name和DBID
- 高薪程序员面试题精讲系列02之高薪面试经验分享