2016 - 2024

感恩一路有你

awk字符串去掉空格 shell中如何去掉字符串中间的空格?

浏览量:1980 时间:2021-03-12 06:31:18 作者:admin

shell中如何去掉字符串中间的空格?

1、删除行首空格

sed ‘s/^[ t]*//g"

说明:

第一个/的左边是s表示替换,即将空格替换为空。

第一个/的右边是表示后面的以xx开头。

中括号表示“或”,空格或tab中的任意一种。这是正则表达式的规范。

中括号右边是*,表示一个或多个。

第二个和第三个中间没有东西,表示空

g表示替换原来buffer(缓冲区)中的,sed在处理字符串的时候并不对源文件进行直接处理,先创建一个buffer,但是加g表示对原buffer进行替换

整体的意思是:用空字符去替换一个或多个用空格或tab开头的本体字符串

2、删除行末空格

sed ‘s/[ t]*$//g"

和上面稍微有些不同是前面删除了^符,在后面加上了美元符,这表示以xx结尾的字符串为对象。

但是要注意在KSH中,Tab并不是t而是直接打入一个Tab就可以了。

3、删除所有的空格

sed s/[[:space:]]//g

去除字符串前后空格的办法?

这是个正则表达式/(正则)/g//之间的是正则,后面的g表示全局匹配 ^s ,^表示开头,s是空格, 匹配1或多个字符,所以这里的意思就是匹配开头的1或多个空格同理s $表示匹配结尾的1或多个空格,$表字符串结尾 中间的|表示匹配左边或者右边的正则,所以一个字符串只要开头或结尾有空格,空格的部分就会被匹配到 然后第二个参数""是匹配到的内容被替换的内容,也就是替换成空串

awk字符串去掉空格 linux去除空格命令 shell 删除空格

版权声明:本文内容由互联网用户自发贡献,本站不承担相关法律责任.如有侵权/违法内容,本站将立刻删除。