shell中字符串截取
Linux 的字符串截取很有用。有八种方法。
假设有变量 var="User:123//321:/home/dir"
1. # 号截取,删除左边字符,保留右边字符。
[root@zhoucentos ~]# var="User:123//321:/home/dir"
[root@zhoucentos ~]# echo ${var#*//}
:/home/dir
其中 var 是变量名,# 号是运算符,*// 表示从左边开始删除第一个 // 号及左边的所有字符
即删除 User:123
结果是 :321:/home/dir
2. ## 号截取,删除左边字符,保留右边字符。
[root@zhoucentos ~]# echo ${var##*/}
dir
##*/ 表示从左边开始删除最后(最右边)一个 / 号及左边的所有字符
即删除 User:123//321:/home/
结果是 dir
3. %号截取,删除右边字符,保留左边字符
[root@zhoucentos ~]# echo ${var%:*}
User://
%:* 表示从右边开始,删除第一个:号及右边的字符
结果是:User:123//321
4. %% 号截取,删除右边字符,保留左边字符
[root@zhoucentos ~]# echo ${var%%:*}
User
%%:* 表示从右边开始,删除最后(最左边)一个: 号及右边的字符
结果是:User
5. 从左边第几个字符开始,及字符的个数
[root@zhoucentos ~]# echo ${var:0:8}
User:
其中的 0 表示左边第一个字符开始,8 表示字符的总个数。
结果是:User:123
6. 从左边第几个字符开始,一直到结束。
[root@zhoucentos ~]# echo ${var:5}
//321:/home/dir
其中的5 表示左边第6个字符开始,一直到结束。
结果是 :123//321:/home/dir
7. 从右边第几个字符开始,及字符的个数
[root@zhoucentos ~]# echo ${var:0-9:5}
/home
其中的 0-9 表示右边算起第九个字符开始,5表示字符的个数。
结果是:/home
8. 从右边第几个字符开始,一直到结束。
[root@zhoucentos ~]# echo ${var:0-9}
/home/dir
表示从右边第九个字符开始,一直到结束。
结果是:/home/dir
注:(左边的第一个字符是用 0 表示,右边的第一个字符用 0-1 表示)
shell中字符串截取的更多相关文章
- c#中字符串截取使用的方法
AndyZhang welcome to java world c#中字符串截取使用的方法 String substring(int beginIndex) String substring(int ...
- 【2017-06-27】Js中获取地址栏参数、Js中字符串截取
一.Js中获取地址栏参数 //从地址栏获取想要的参数 function GetQueryString(name) { var reg = new RegExp("(^|&)" ...
- javascript、jquery 、C#、sqlserveer、mysql、oracle中字符串截取的区别和用法
下标从0开始 ,并且包括起始位 javascript 中字符串截取 : substring(Number start,Number end) var substr = "liuguangfa ...
- shell中字符串操作【转】
转自:http://blog.chinaunix.net/uid-29091195-id-3974751.html 我们所遇到的编程语言中(汇编除外)都少不了字符串处理函数吧,当然shell编程也不例 ...
- Shell中字符串、数值的比较
原文:http://apps.hi.baidu.com/share/detail/31263915 在shell中字符串与数值的比较方法是不同的,要注意区分 整数比较: -eq 等于 ...
- Shell中字符串的切割、拼接、比较、替换
[截取] 一.Linux shell 截取字符变量的前8位,有方法如下: expr substr “$a” 1 8 : 二.按指定的字符串截取 第一种方法: ${varible##*string} # ...
- JavaScript中字符串截取函数slice()、substring()、substr()
在js中字符截取函数有常用的三个slice().substring().substr()了,下面我来给大家介绍slice().substring().substr()函数在字符截取时的一些用法与区别吧 ...
- Shell脚本字符串截取方法总结
Shell脚本8种字符串截取方法总结转自:https://www.cnblogs.com/ralphdc/p/8032335.html Linux 的字符串截取很有用.有八种方法.假设有变量 var= ...
- Thinkphp 3.2中字符串截取
将此方法放到Thinkphp/Common/function.php里/* * 字符串截取函数 * 大白驴 * 2016-11-29 qq 675835721 * */function msubstr ...
随机推荐
- HTML,CSS,font-family:中文字体的英文名称【转载】
转自:http://www.9958.pw/post/html_font-family 宋体 SimSun 黑体 SimHei 微软雅黑 Microsoft YaHei 微软正黑体 Microsoft ...
- php curl模块开启失败解决参考
现在公司的测试项目和正式项目是部署在同一台服务器上的,为了在重启apache时互不影响,我在服务器上部署了两个apache服务,使用nginx做url转发. 结果正式环境的项目使用curl没有问题,但 ...
- VMware DRS概述及功能
通过动态分配和平衡计算资源,使您的 IT 基础架构与业务目标一致.VMware Distributed Resource Scheduler (DRS) 可持续监控所有资源池的利用率,并根据业务需求在 ...
- 使用java mail的网易smtp协议 发送邮件
package com.enation.newtest; import java.security.GeneralSecurityException; import java.util.Propert ...
- 汕头市队赛 SRM 08 B
B-3 SRM 08 描述 给长度为 n 的数列 A 和长度为 m 的数列 B,问有多少长度为 m 的数列 C 满足 输入格式 第一行俩整数 n 和 m 第二行 n 个整数 ,表示数列 A 第三行 m ...
- quartz 调度
1.POI文件中导入包 <dependency> <groupId>org.quartz-scheduler</groupId> <artifact ...
- (转)cygwin包管理器apt-cyg
通过终端安装apt-cyg之前选要安装以下软件包 wget tar gawk bzip2 Cygwin终端安装 wget http://apt-cyg.googlecode.com/svn/trunk ...
- Linux Oracle DB log 清理
sid_list=`/bin/ps -ef |/bin/grep smon |/bin/grep -v grep | /bin/cut -f3 -d_` host_name=`hostname` cd ...
- C# Socket的粘包处理(转)
http://www.cnblogs.com/aarond/p/Socket111.html 当socket接收到数据后,会根据buffer的大小一点一点的接收数据,比如: 对方发来了1M的数据量过来 ...
- Logstash 最佳实践
https://doc.yonyoucloud.com/doc/logstash-best-practice-cn/index.html