我有一个bash脚本,我得到的磁盘使用率,例如60%
。 我如何删除%
符号? 使用grep或awk?
这应该做到这一点:
sed 's/%//'
为了获得最佳效果,通过pipe道将其穿过。
用se代替sed。
tr -d '%'
sed是最简单的方法之一
sed -i 's/\%//g' fileName
不需要像tr
甚至sed
这样的外部工具,因为bash可以自己永远做到这一点。
percentage="60%" number=${percentage%\%}
该语句从variables末尾删除最短的匹配子string(本例中为转义的%
)。 还有其他的string操作工具内置到bash中。 它甚至支持正则expression式。 一般来说,大部分通常使用tr
, sed
, awk
或grep
的人都可以使用bash内build的方法来完成。 这只是几乎愚蠢的知道,并带来大枪…
有关更多信息,请参阅http://tldp.org/LDP/abs/html/parameter-substitution.html#PSOREX1 。
如果磁盘使用量在variables中,bash可以将其作为variablesreplace的一部分来执行:
diskusagepct="60%" echo "disk usage: ${diskusagepct%\%} percent" # prints disk usage: 60 percent diskusagenum="${diskusagepct%\%}" # sets diskusagenum to 60