shell 脚本string的截取(str1=${str#*string} str2=${str%sring*}),
分享于 点击 27242 次 点评:44
shell 脚本string的截取(str1=${str#*string} str2=${str%sring*}),
1. string 的字符串的截取
str="I am cao \t shu ming cao \t shu liang"
[~]$ echo ${str#*\t} str=${str#*substring}:从左向右截取第一个substring 之后的字符串
shu ming cao \t shu liang
[ ~]$ echo ${str##*\t} str=${str##*substring}:从左向右截取最后一个substring之后的字符串
shu liang
#理解 * 就是删除的部分;#* \t 从左向右第一个第一个\t 之后的截取下来
str="I am cao \t shu ming cao \t shu liang"
echo ${str%\t*} # \t 需要加转义字符
I am cao \t shu ming cao \
echo ${str%\\t*} #str=${str%substring*} 从右向左截取第一个substring之后的字符串 【因为从右向左,所以截取的是左边的字符串】
I am cao \t shu ming cao
echo ${str%%\\t*} #str=${str%%substring*} 从右向左截取最后一个substring之后的字符串
I am cao
2. shell 脚本中获取文件的后缀:
[~]pd="/home/zengtai.csm/p4psearch.sh"
[ ~]$ a=${pd#*/p4psearch.} # #*/ 是一个正则表达式
[~]$ echo $a
sh
3. shell 脚本中获取一个软连接
ln -s /home/zengtai.csm/tool/rgb.sh /home/zengtai.csm/testlink
[ ~]$ ll /home/zengtai/testlink
lrwxrwxrwx 1 zengtai users 29 Sep 5 12:28 /home/zengtai.csm/testlink -> /home/zengtai.csm/tool/rgb.sh
readlink -f /home/zengtai.csm/testlink #返回的是软连接对应的目录
/home/zengtai.csm/tool/rgb.sh
readlink -f /home/zengtai.csm/tool/rgb.sh #没有软连接,返回原来的目录
/home/zengtai.csm/tool/rgb.sh
相关文章
- 暂无相关文章
用户点评