Shell脚本实现简单分割字符串
我们有这样一个字符串:
info='abcd;efgh'
现在想获取abcd和efgh,我们可以简单地用cut工具来获取:
fstr=`echo $info | cut -d \; -f 1`
sstr=`echo $info | cut -d \; -f 2`
这里主要是用了cut工具的-d和-f参数:
-d:指定字段的分隔符,默认的字段分隔符为“TAB”;
-f:显示指定字段的内容;
关于cut工具其他参数可参考这里:cut命令
相关推荐
-
比较两个字符串是否相等的shell代码
比较两个字符串是否相等的办法是: if [ "$test"x = "test"x ]; then 这里的关键有几点: 1 使用单个等号 2 注意到等号两边各有一个空格:这是unix shell的要求 3 注意到"$test"x最后的x,这是特意安排的,因为当$test为空的时候,上面的表达式就变成了x = testx,显然是不相等的.而如果没有这个x,表达式就会报错:[: =: unary operator expected 二元比较操作符,比较
-
用Shell判断字符串包含关系的方法小结
前言 现在每次分析网站日志的时候都需要判断百度蜘蛛是不是真实的蜘蛛,nslookup之后需要判断结果中是否包含"baidu"字符串 以下给出一些shell中判断字符串包含的方法,来源程序员问答网站 stackoverflow 以及segmentfault. 方法一:利用grep查找 strA="long string" strB="string" result=$(echo $strA | grep "${strB}") if
-
Shell脚本8种字符串截取方法总结
Linux 的字符串截取很有用.有八种方法. 假设有变量 var=http://www.aaa.com/123.htm. 1. # 号截取,删除左边字符,保留右边字符. 复制代码 代码如下: echo ${var#*//} 其中 var 是变量名,# 号是运算符,*// 表示从左边开始删除第一个 // 号及左边的所有字符 即删除 http:// 结果是 :www.aaa.com/123.htm 2. ## 号截取,删除左边字符,保留右边字符. 复制代码 代码如下: echo ${var##*/}
-
Shell字符串比较相等、不相等方法小结
#!/bin/sh #测试各种字符串比较操作. #shell中对变量的值添加单引号,爽引号和不添加的区别:对类型来说是无关的,即不是添加了引号就变成了字符串类型, #单引号不对相关量进行替换,如不对$符号解释成变量引用,从而用对应变量的值替代,双引号则会进行替代 #author:tenfyguo A="$1" B="$2" echo "输入的原始值:A=$A,B=$B" #判断字符串是否相等 if [ "$A" = "
-
Shell脚本中计算字符串长度的5种方法
有时在Linux操作系统中需要计算某个字符串的长度,通过查询资料整理了下目前Shell中获取字符串的长度的多种方法,在这里分享给大家,方法如下: 方法1: 使用wc -L命令 wc -L可以获取到当前行的长度,因此对于单独行的字符串可以用这个简单的方法获取,另外wc -l则是获取当前字符串内容的行数. 复制代码 代码如下: echo "abc" |wc -L 方法2: expr length string 使用expr length可以获取string的长度 方法3: awk获取域的个
-
Shell实用技巧:快速去除字符串中的空格
在整理词库的过程中遇到 一个问题,有些其实是同一个关键词之关有空格的话,无法正常被去重,那么有没有办法能快快速去除这些字符中间的空格呢?经过百度一番,找到一个解决办法,记录一下. 效果如下图所示,图上半部分是示例文本,下半部分就是用shell去掉空格后的效果.其中用到就是下面第3个方法. 在UNIX上使用sed命令进行字符串处理中常常遇到的问题就是行首行尾的空格怎么删除. 下面介绍sed是怎样实现的,当然awk同样可以. 1.删除行首空格 复制代码 代码如下: sed 's/^[ \t]*//g
-
Linux shell脚本中字符串连接的方法
如果想要在变量后面添加一个字符,可以用一下方法: 复制代码 代码如下: $value1=home$value2=${value1}"="echo $value2 把要添加的字符串变量添加{},并且需要把$放到外面.这样输出的结果是:home=,也就是说连接成功. 又如: 复制代码 代码如下: [root@localhost sh]# var1=/etc/[root@localhost sh]# var2=yum.repos.d/[root@localhost sh]# var3=${v
-
Shell中判断字符串是否为数字的6种方法分享
本篇文章主要介绍了"shell 判断字符串是否为数字",主要涉及到shell 判断字符串是否为数字方面的内容,对于shell 判断字符串是否为数字感兴趣的同学可以参考一下. #!/bin/bash ## 方法1 a=1234;echo "$a"|[ -n "`sed -n '/^[0-9][0-9]*$/p'`" ] && echo string a is numbers 第一个-n是shell的测试标志,对后面的串"`
-
Shell字符串截取的详细方法
一.Linux shell 截取字符变量的前8位,有方法如下: 复制代码 代码如下: 1.expr substr "$a" 1 82.echo $a|awk '{print substr(,1,8)}'3.echo $a|cut -c1-84.echo $5.expr $a : '\(.\\).*'6.echo $a|dd bs=1 count=8 2>/dev/null 二.按指定的字符串截取1.第一种方法:${varible##*string} 从左向右截取最后一个strin
-
在Shell中分割字符串的例子
比如,要分割 test="aaa,bbb,cc cc,dd dd",可以这样 复制代码 代码如下: arr=$(echo $test|tr "," "\n") 还可以这样 复制代码 代码如下: OLD_IFS=$IFSIFS=','arr=$testIFS=$OLD_IFS 然后用 复制代码 代码如下: for x in $arr; do echo $xdone 看看效果 或者更直接一点 复制代码 代码如下: IFS=',' arr=($tes
随机推荐
- Java动态添加view的方法
- Java开发之HashMap的使用和遍历
- C#字符串数组转换为整形数组的方法
- WMI获取硬件信息封装函数方法(联想台式机出厂编号 CPUID BIOS序列号 硬盘信息 显卡信息 MAC地址)
- python复制文件代码实现
- React-Native中一些常用组件的用法详解(二)
- Android中悬浮窗口的实现原理实例分析
- php注册系统和使用Xajax即时验证用户名是否被占用
- Python编程实战之Oracle数据库操作示例
- Go语言中new()和 make()的区别详解
- 使用CSS框架布局的缺点和优点小结
- 浅析jQuery中使用$所引发的问题
- java IO流 之 输入流 InputString()的使用
- Android简易电话拨号器实例详解
- shiro之INI配置详解
- 简介Redis中的showlog功能
- IE6/7/8/9中Table/Select的innerHTML不能赋值的解决方法
- Ubuntu中为Android系统上实现内置C可执行程序测试Linux内核驱动程序
- 详解C语言中free()函数与getpagesize()函数的使用
- Cisco路由器上配置pppoe拨号