请建议如何删除“=”到值/字符串之间的空格(“=”字符之后),应该由 awk 或 sed 或 perl 命令实现,并且命令必须适合Solaris操作系统,(命令应该在我的bash 脚本)
我有 Solaris 10 操作系统
示例1(更新前)
更多文件
a=2
b= 45
c= 4
d= 98
e=09
f= gdtd
g= @7h
parameter5= 87
示例2(更新后)
更多文件
a=2
b=45
c=4
d=98
e=09
f=gdtd
g=@7h
parameter5=87
答案1
尝试这个:
sed 's/=[ \t]*/=/' input.txt
如果需要,请指定-i
就地编辑的选项。
sed -i
不适合Solaris
重定向到另一个文件并重命名为原始文件或使用 perl 代替:
perl -pi -e 's/=[ \t]*/=/g' input.txt
答案2
sed 's/=[[:blank:]]*/=/' < file.in > file.out
答案3
有很多方法可以做到这一点,但最简单和最原始的 - 获取文件并通过 sed 通过管道传输:cat $filename | sed -e 's/ //g'
答案4
对于solaris 11,将多个空格变成内联的单个空格的方法是:
[带输出的命令] | sed -e 's/ */ /g'
带星号的两个空格