3

我只是想%从变量中删除一个符号,所以我可以对结果进行数学计算。我已经尝试了几件事,但它们似乎都不起作用:

$ output="23%"
# usep=$(echo $output | awk '{print $1}' | cut -d '%' -f 1)
# usep=`echo $output | sed 's/\%//g`
# usep=`echo $output | head -c 2`

变量usep仍然包含%字符。有任何想法吗?

4

3 回答 3

6

您可以使用 POSIX 参数替换:

$ output="23%"
$ usep=${output%%\%}
$ echo $usep
23
于 2012-12-26T19:01:43.210 回答
2

指定output

output="23%"

你错过了第二'

usep=`echo $output | sed 's/%//g'`
于 2012-12-26T19:01:52.307 回答
2

不知道为什么使用的方法cut对你不起作用,但这里有一个对我来说非常有用:

#!/bin/bash

output="23%"
usep=`echo $output | cut -d '%' -f 1`
echo $usep
于 2012-12-26T19:01:52.553 回答