在shell中截取心仪的字符串
2024-08-24 22:23:38
file=/dir1/dir2/dir3/my.file.txt
${file#*/} 去掉左边
${file##*/} 去掉左边最后一个
${file%/*} 去掉右边
${file%%/*} 去掉右边第一个
${file:5:5} 截取5开始长度5的字符
${file/dir/path} 将第一个dir替换为path
${file//dir/path} 将所有dir替换为path
${file-my.file.txt} 未设置则返回my.file.txt,空和非空不处理
${file:-my.file.txt} 未设置和空值则返回my.file.txt,非空不处理
${file+my.file.txt} 空值或非空值则返回my.file.txt,未设置不处理
${file:+my.file.txt} 非空则返回my.file.txt,空值或未设置不处理
${file=my.file.txt} 未设置则返回my.file.txt且赋值file,空值或非空不处理
${file:=my.file.txt} 未设置或空值返回my.file.txt且赋值file,非空不处理
${file?my.file.txt} 未设置返回my.file.txt到STDERR,空值及非空值时不作处理
${file:?my.file.txt} 未设置或空值返回my.file.txt到STDERR,非空值时不作处理
注意: ":+"的情况是不包含空值的.":-", ":="等只要有冒号就是包含空值(null).
unset file可以将file变为未设置
${#file} 变量长度
A=(a b c def)
${A[@]} ${A[*]} 可得到全部数组
${A[n]} 可以得到第n个值,
${#A[@]} ${#A[*]} 得到数组长度
${#A[n]} 得到第n个值长度
最新文章
- C# 多線程&;BackgroundWorker概念入門教程
- linux下dos环境和unix环境转换
- ANdroid5.0不能隐式启动service,必须显示,解决办法,加服务端包名
- Objective-C Runtime与黑客帝国
- java方法参数
- 20145305《Java程序设计》实验三
- windows7 图形界面远程 centos6.5
- CentOS 6.7安装Tomcat 7
- CSS基础知识笔记(三)
- [spring入门学习笔记][spring的IoC原理]
- jQuery EasyUI combobox多选和赋值
- 关于jave在oracle驱动下事务提交与回滚问题
- TCP/IP协议的编写《转载》
- IOS中的ViewController 的loadView、viewDidLoad、viewDidUnload
- C语言--第六周作业
- C#WFM关于PICBOX 再DIP界面放大125%后,图片显示不完整
- Boruvka算法求最小生成树
- 写jsp文件时需要注意的一些小细节
- sql server中replace()函数用法解析
- 屏蔽windows快捷键的方法