我有一个带有这段代码的 shell 脚本:
var=`hg st -R "$path"`
if [ -n "$var" ]; then
echo $var
fi
但是条件代码总是执行,因为hg st
总是打印至少一个换行符。
- 有没有一种简单的方法可以从
$var
中去除空格(例如 PHP 中的trim()
)?
或
- 是否有处理此问题的标准方法?
最佳答案
一个简单的答案是:
echo " lol " | xargs
Xargs会为你做修剪。这是一个命令/程序,没有参数,返回修剪后的字符串,就这么简单!
注意:这不会删除所有内部空格,因此 "foo bar"
保持不变;它不会变成 "foobar"
。但是,多个空格将被压缩为单个空格,因此 "foo bar"
将变为 "foo bar"
。此外,它不会删除行尾字符。
关于string - 如何从 Bash 变量中去除空格?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/369758/