shell对字符串进行处理的一些例子,包括字符串的截取,连接,匹配,替换,翻转等。
1,字符串的截取
复制代码代码示例:
echo $a|awk ’{print substr( ,1,8)}’
substr是awk中的一个子函数,对第一个参数的进行截取,从第一个字符开始,共截取8个字符,如果不够就从第二个字符中补充
方法二
复制代码代码示例:
echo $a|cut -b2-8
cut:对标准输入的字符串进行处理
方法三
方法四
复制代码代码示例:
echo $test |sed ’s//(.*/)/(../)$//’
截取字符串的前2位
复制代码代码示例:
echo $test |sed ’s/^/(../)/(.*/)//’
2,字符串的比较
3,字符串的连接
4,字符串的翻转
方法二:
复制代码代码示例:
#!/usr/bin/awk -f
{ revline = "" for (i=1;i<=length;i++) { revline = substr(,i,1) revline } } END{print revline}
5,字符串的匹配
6,字符串的排序
7,字符串的替换
复制代码代码示例:
%x=abcdabcd
%echo $ # 只替换一个 bbcdabcd %echo $ # 替换所有 bbcdbbcd
sh中:
复制代码代码示例:
echo $test |sed ’s/xx/yy’
替换单个匹配
8,得到字符串的长度: 9,判断字符串是否为数字
10,得到字符串中某个字符的重复次数
复制代码代码示例:
echo $a |tr "x" "/n" |wc -l
得到的结果需要减去1
复制代码代码示例:
echo $a |awk -F"x" ’{print NF-1}’
11,得到字符串中某个string的重复次数
代码示例:
for i in file_list
do vi $i <<-! :g/xxxx/s//XXXX/g :wq ! done
13,如何将字符串内每两个字符中间插入一个字符
代码示例:
echo $test |sed ’s/../&[insert char]/g’
(责任编辑:IT) |