Unix字符串截取

发布时间:2020-03-17 12:12:02 作者:baser
阅读:1421
Unix服务器限时活动,0元免费领! 查看>>

1、使用unix自带的方法:

${varible##*string} 从左向右截取最后一个string后的字符串

${varible#*string}从左向右截取第一个string后的字符串

${varible%%string*}从右向左截取最后一个string后的字符串

${varible%string*}从右向左截取第一个string后的字符串

"*"只是一个通配符可以不要


$ test1=123456.txt
$ echo ${test1%.txt}
123456
$ echo ${test1#*23}
456.txt

$ test2=${test1%.txt}'.rst'

$ echo $test2

123456.rst

2、使用cut命令

$ test1=123456.txt
$ echo $test1|cut -f 1 -d .

123456

此处我略有疑问,为什么不能将此值赋值给另一个变量?比如:

$ test2=echo $test1|cut -f 1 -d .

ksh: 123456.txt:  not found.

$ echo test2=$test1|cut -f 1 -d .

test2=123456

$ echo $test2

此处test2无值,why?

忽然想到shell中的反引号了,TAB键上面的那个,反引号引起来的部分会优先执行,做了下测试:

$ test2=`echo $test1|cut -f 1 -d .`

$ echo $test2

123456

$ test2=`echo $test1|cut -f 1 -d .`'.rst'

$ echo $test2

123456.rst

成功!

亿速云「云服务器」,即开即用、新一代英特尔至强铂金CPU、三副本存储NVMe SSD云盘,价格低至29元/月。点击查看>>

推荐阅读:
  1. Unix哲学
  2. Unix高级环境编程笔记-1--Unix标准化和Unix系统

开发者交流群:

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

unix cut 字符串截取

上一篇:初始Oracle database 11g express

下一篇:上篇丨数据融合平台DataPipeline的应用场景

相关阅读

您好,登录后才能下订单哦!

密码登录
登录注册
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》
开发者交流群×