awk字符串去掉空格 shell中如何去掉字符串中间的空格?
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 删除空格
版权声明:本文内容由互联网用户自发贡献,本站不承担相关法律责任.如有侵权/违法内容,本站将立刻删除。