
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")"