默认输出units
似乎有点冗长:
$ units "2 fortnight" seconds
* 2419200
/ 4.1335979e-07
假设我只想要数字,这样我就可以做类似的事情sleep $(units "2 fortnight" seconds)
。是否有units
我缺少的格式参数?或者是否有一些简单的方法可以将其通过管道传输到某些东西并只获取数字?我可以看到这$ units "2 fortnight" seconds | head -n 1
至少会消除这个因素,但我仍然有额外的空格和*
。
答案1
和GNU Units version 2.19
:
$ units --one-line --compact '2 fortnight' seconds
2419200
BSD 实现units
没有--one-line --compact
,但你可以使用 awk:
$ units '2 fortnight' seconds | awk 'NR == 1 {print $2}'
2419200
答案2
虽然其他答案解决了这个问题,但如果您碰巧有一个非常旧的版本,units
您也可以这样做:
$ units "2 fortnight" sec | head -n 1 | grep -E "\d+" --only-matching
2419200