기본 출력은 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