기본적으로 다른 길이 단위를 사용하도록 "units" 명령에 어떻게 알릴 수 있나요?

기본적으로 다른 길이 단위를 사용하도록 "units" 명령에 어떻게 알릴 수 있나요?

기본적으로 GNU units명령은 길이 단위를 미터 단위로 출력합니다. 다른 단위를 사용하려면 You want:메시지가 표시될 때 수동으로 지정해야 합니다. 기본값을 미터에서 다른 값으로 변경하는 방법이 있나요?

$ units
Currency exchange rates from FloatRates (USD base) on 2020-07-08
3496 units, 109 prefixes, 109 nonlinear units

You have: (1gallon)^(1/3)
You want:
        Definition: 0.15584913 m

위의 예에서 You want:빈 입력과의 상호 작용을 통해 출력 Definition: 0.51131604 ft또는 를 생성할 수 있습니다. 현재는 or 명시적으로 Definition: 6 in + 1.0863395 * 1|8 in지정하여 이러한 출력을 얻는 방법만 알고 있습니다 .ftftin

You have: (1gallon)^(1/3)
You want: ft
        * 0.51131604
        / 1.9557376
You have: (1gallon)^(1/3)
You want: ftin
        6 in + 1.0863395 * 1|8 in

명령줄 옵션(예: ) --units, 환경 변수(예: ) 또는 의 항목을 사용하여 UNITS_SYSTEM기본값으로 구성할 수도 있는 것 같습니다 ~/.units.

답변1

"Do you want:" 프롬프트에서 를 누르면 Enter기본 단위를 요청하는 것이 아니라 "Do you have:" 프롬프트에서 입력한 단위의 정의를 요청하는 것입니다. 이것이 바로 결과가 "정의:"로 시작하는 이유입니다.

시작 단위 값을 지정하지 않으면 전체 정의가 표시됩니다(영국 로케일 사용).

$ units
Currency exchange rates from FloatRates (USD base) on 2020-10-06 
3072 units, 109 prefixes, 109 nonlinear units

You have: gallon
You want:
        Definition: brgallon = 4.54609 l = 0.00454609 m^3
You have: 

값을 지정하면 units해당 값은 정의에 따라 변환되지 않은 단위로 표시됩니다(!파일의 등가 열에 있는 단위 definition.units), 길이 관련 단위의 경우 미터입니다.

따라서 정의를 재정의하지 않고는 다른 기본 "대상" 단위를 지정할 수 없습니다.

관련 정보