提问人:Bharat Sinha 提问时间:8/3/2012 最后编辑:CommunityBharat Sinha 更新时间:7/13/2017 访问量:44345
Shell 脚本:如何从 bash 变量中修剪空格 [duplicate]
Shell Script: How to trim spaces from a bash variable [duplicate]
问:
可能的重复:
如何从 bash 变量中修剪空格?
我已经搜索并尝试了许多解决方案,但似乎没有任何解决方案适合我......
我有一个 shell 变量,它由于前导和尾随空格而导致问题。如何使用 shell 脚本去除一行中的所有空格?
答:
19赞
jpmuc
8/3/2012
#1
我能想到两个选择:
variable=" gfgergj lkjgrg "
echo $variable | sed 's,^ *,,; s, *$,,'
否则
nospaces=${variable## } # remove leading spaces
nospaces=${variable%% } # remove trailing spaces
评论
4赞
tzelleke
8/3/2012
nospaces=${variable// }
实际上删除了我的 Bash 中的前导和尾随空格
8赞
blue01
1/6/2014
nospaces=${variable// } 删除所有空格
2赞
gammay
4/12/2016
nospaces=${variable// } 删除所有空格
0赞
Gene Pavlovsky
7/13/2017
第二个选项最多删除一个空格。这种方法很长,仅适用于 bash,但非常有效,还可以处理制表符、换行符等。
1赞
Kent
8/3/2012
#2
有很多方法可以实现这一点,awk oneliner:
kent$ echo " foo - - - bar "|awk '{sub(/^ */,"",$0);sub(/ *$/,"",$0)}1'
foo - - - bar
评论