![bc에 숫자를 우아하게 입력하는 방법은 무엇입니까?](https://linux55.com/image/186160/bc%EC%97%90%20%EC%88%AB%EC%9E%90%EB%A5%BC%20%EC%9A%B0%EC%95%84%ED%95%98%EA%B2%8C%20%EC%9E%85%EB%A0%A5%ED%95%98%EB%8A%94%20%EB%B0%A9%EB%B2%95%EC%9D%80%20%EB%AC%B4%EC%97%87%EC%9E%85%EB%8B%88%EA%B9%8C%3F.png)
xargs -Ix
다음을 사용하는 것보다 더 우아한 방법이 있습니까?
echo "283" | xargs -Ix bc -l -e "scale=2; l( x )/l(10)"
답변1
나는 여기서 이유를 정말로 이해하지 못합니다 xargs
.
printf 'scale=2; l(%s)/l(10)\n' "283" | bc -l
파일에서 숫자를 읽을 때의 대안:
awk '{ printf "l(%s)/l(10)\n", $1 }' file | bc -l -e 'scale=2'
( a 가 bc
가지고 있다고 가정 -e
) 또는 bc
전혀 없음:
awk '{ printf "%.2f\n", log($1)/log(10) }' file
답변2
내 것이 없기 bc
때문에 테스트되지 않았지만 작동할 것입니다.bc
-e
echo "283" | xargs echo 123
로 대체될 수 있습니다.
echo 123 "$(echo "283")"
그래서 당신의 예를 들어
bc -l -e "scale=2; l( x )/l(10)" "$(echo "283")"