저는 스크립팅을 처음 접했고 이 명령을 사용하는 데 약간 어려움을 겪고 있습니다. 누군가 도움을 줄 수 있을 것입니다.
이 명령을 사용하면 모든 것이 잘 작동합니다.
titi=`echo 'scale=6; 10/65535' | bc -l | awk '{printf "%.6f\n", $0}'
echo "titi = $titi "
알겠어요
titi = 0.000152
완벽한
하지만 변수를 사용하려고 하면 오류가 발생합니다.
toto=10
titi=`echo 'scale=6; $toto/65535' | bc -l | awk '{printf "%.6f\n", $0}'`
echo "titi = $titi "
결과
(standard_in) 1: illegal character: $
분명히 명령에 변수를 작성하는 방식이 잘못되었지만 작성 방법을 모르겠습니다.
누구든지 나를 도와줄 수 있나요?
답변1
변수를 확장하고 메모하려면 큰따옴표를 사용하세요.$()
명령 대체에는 백틱을 사용하는 것이 좋습니다.. 그것은해야한다:
$ toto=10
$ titi=$(echo "scale=6; $toto/65535" | bc -l | awk '{printf "%.6f\n", $0}')
$ echo "titi = $titi "
titi = 0.000152
(참고 $
로명령줄 프롬프트
명령의 일부가 아닌 새 줄의 시작을 나타내는 데 사용됩니다.