【shell】dirname $0和readlink用法
转自:shell的dirname $0和readlink用法
获取当前脚本路径
path.sh
#!/bin/bash
path=$(cd `dirname $0`;pwd)
echo $path
path2=$(dirname $0)
echo $path2
当前脚本存在路径:/home/software
sh path.sh
/home/software
.
解释:
dirname $0 只是获取的当前脚本的相对路径.
cd `dirname $0`;pwd 先cd到当前路径然后pwd,打印成绝对路径方法二:
path.sh
#!/bin/bash
path=$(dirname $0)
path2=$(readlink -f $path)
echo path2
sh path.sh
/home/software
解释:
readlink -f $path 如果$path没有链接,就显示自己本身的绝对路径
readlink
readlink是linux用来找出符号链接所指向的位置
例1:
readlink -f /usr/bin/awk
结果:
/usr/bin/gawk #因为/usr/bin/awk是一个软连接,指向gawk
例2:
readlink -f /home/software/log
/home/software/log #如果没有链接,就显示自己本身的绝对路径
参数:path -- 要查找的软链接路径
返回值:返回软链接所指向的文件
以下实例演示了 readlink() 方法的使用:
#!/usr/bin/python3import ossrc = '/usr/bin/python'
dst = '/tmp/python'# 创建软链接
os.symlink(src, dst)# 使用软链接显示源链接
path = os.readlink( dst )
print (path)
执行以上程序输出结果为:
/usr/bin/python
获取路径的比较
path.sh
#!/bin/bash
PATH1=$(dirname $0)
PATH2=$(cd `dirname $0`;pwd)
PATH3=$(readlink -f $PATH1/..)
echo $PATH1
echo $PATH2
echo $PATH3
当前脚本存在路径:/home/software
sh path.sh
. 【echo $PATH1】
/home/software 【echo $PATH2】
/home 【echo $PATH3】
【shell】dirname $0和readlink用法相关推荐
- Linux的readlink与dirname $0和readlink用法以及sed的使用,Linux系统盘和数据盘的查看等整理汇总
Linux与Shell相关命令整理 dirname $0和readlink用法 获取当前脚本路径 path.sh dirname $0 只是获取的当前脚本的相对路径. #!/bin/bash path ...
- shell中$0,$?,$!等的特殊用法
shell中$0,$?,$!等的特殊用法 (2011-03-01 17:38:00) 转载▼ 标签: it 变量说明: $$ Shell本身的PID(ProcessID) $! Shell最后运行 ...
- Linux中shell编程的for循环用法
关于shell中的for循环用法很多,一直想总结一下,今天网上看到上一篇关于for循环用法的总结,感觉很全面,所以就转过来研究研究... 1. for((i=1;i<=10;i++));do e ...
- SHELL/SSH基础知识(入门篇)-包含 shell 脚本语言的基本用法、 shell 脚本语言的基本用法、流程控制、函数 function、其它脚本相关工具、数组 array(欢迎留言交流)
目录 1 shell 脚本语言的基本用法 1.1 shell 脚本注释规范 1.1.1 shell 脚本注释规范 1.1.2 执行(5种) 1.1.3 在远程主机运行本地脚本 1.1.4 检查shel ...
- readlink用法
- 打印已解析的符号链接或规范文件名 格式 readlink [OPTION]... [FILE]... 描述 打印符号链接或规范文件名的值 -f, --canonicalize 通过遵循 ...
- linux中shell变量$#,$@,$0,$1,$2的含义解释
linux中shell变量$#,$@,$0,$1,$2的含义解释: 变量说明: $$ Shell本身的PID(ProcessID) $! Shell最后运行的后台Process的PID $ ...
- linux中sh+$0,浅谈linux中shell变量$#,$@,$0,$1,$2的含义解释
摘抄自:ABS_GUIDE 下载地址:http://www.tldp.org/LDP/abs/abs-guide.pdf linux中shell变量$#,$@,$0,$1,$2的含义解释: 变量说明: ...
- C语言 (条件编译#ifdef、#ifndef) (#if 常量,#if 1,#if 0)的用法
当屏蔽掉大块代码时,使用"#if 0"比使用"/**/"要好,因为用"/**/"做大段的注释要防止被注释掉的代码中有嵌套的"/** ...
- shell变量$#,$@,$0,$1,$2解释
linux中shell变量$#,$@,$0,$1,$2的含义解释: 变量说明: $$ Shell本身的PID(ProcessID) $! Shell最后运行的后台Process的PID $? 最后运行 ...
最新文章
- Guava 中的 Stopwatch 是个什么鬼?
- 求5个学生4门成绩的总分和平均分
- python numpy官网_Python Numpy 教程(上)
- 月薪40K的推荐算法工程师,需要具备怎样的技能?
- 【算法】差分约束系统
- flex 图片旋转(解决公转和自转问题)
- 分页第一页用0还是1_如何设计api分页
- dbus 和 policykit 实例篇(python)
- 01-H5语义化标签
- 在Grails 2.0中使用Servlet 3.0异步功能
- ASP.Net数据库如何存取图片
- JavaScript获取距离某天前或后的日期
- latex 改变字体颜色
- OpenCV身份证离线识别技术实战(一)
- edius隐藏快捷键_Eduis快捷键,大家参考一下!【EDIUS】史上最全的EDIUS快捷键资料分享!...
- qu32调音台说明书_Qu-32 数字调音台
- 人脸识别十大关键技术
- 用手机打开word图表位置很乱_原来Word还可以自动生成图片和图表目录!
- 衰老,其实是一种疾病?
- Android 集成环信客服云
热门文章
- Nat. Chem. Biol. | 功能宏基因组筛选发现一种意想不到的β-葡萄糖醛酸酶
- 地理信息系统相关软件技术杂志
- 单片机动态从00到99C语言,基于c语言单片机秒表课程设计1.doc
- 成都嵌智捷达科技产品高清录屏器设备
- 前端自动化构建工具--Plop
- matlab 雷达工具箱,radar_toolbox
- 2022年河北省安全保护服务人员(初级保安员)考试练习题及答案
- Jpegsnoop-可以鉴别图片是否被PS的工具
- 网络推广团队浅谈网站关键词布局的小技巧!
- 《UNIX网络编程:套接字联网API》啃书笔记(第8UDP套接字编程、11章地址转换)