我在script.tcl
中有以下内容:
#!/usr/bin/env tclsh
set disk(free) [exec -- stat -f -c 'scale=3;(%a*%S)/1024/1024/1024' / | bc ]
当我执行脚本时,我得到以下输出:(翻译自匈牙利语)
stat: missing operand
For more information execute the „stat --help” command.
while executing
"exec -- stat -f -c 'scale=3"
invoked from within
"set disk(free) [exec -- stat -f -c 'scale=3;(%a*%S)/1024/1024/1024' / | bc ]"
(file "~/script.tcl" line 2)
我做错了什么?在它上面运行命令就可以了。
答案 0 :(得分:3)
你必须用表达式来代替单引号。
% exec stat -f -c {scale=3;(%a*%S)/1024/1024/1024} / | bc
137.916
%