wat*_*sky 4 scripting linux shell bash
很容易,我正在编写一个脚本,它需要一些浮点后有 2 位数字的值。尝试使用bc我不明白如何使用“比例”,即
A=12 ; bc <<< $(($A/5))
Run Code Online (Sandbox Code Playgroud)
这是正确的,但添加“比例”会导致错误:
A=12 ; bc <<< 'scale=2;$(($A/5))'
(standard_in) 1: illegal character: $
(standard_in) 1: illegal character: $
Run Code Online (Sandbox Code Playgroud)
用双引号替换单引号;因为$A在您的等式中使用单引号没有扩展,而是被视为字面上$A没有12
A=12 ; bc <<< "scale=2;$(($A/5))"
2
Run Code Online (Sandbox Code Playgroud)
此外,在 $(()) 中的变量不需要指定为$A,只是A会做,例如
A=12 ; bc <<< "scale=2;$((A/5))"
2
Run Code Online (Sandbox Code Playgroud)
接下来,在执行 $(()) 时,您会调用子shell,这不是您想要做的,因为bc那时什么也不做。尝试这个
A=12 ; bc <<< "scale=2; $A/5"
2.40
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
29008 次 |
| 最近记录: |