朋友们,我不知道为什么当我运行一些 C shell 脚本时会显示“0.0u 0.0s 0:00.00 0.0% 0+0k 0+0io 0pf+0w”(以及许多这样的行),但在其他一些脚本时不会显示跑。而且我以前从未遇到过这个问题,这不会影响我的程序结果。
在我尝试调试和搜索后,我认为以下代码存在一些问题,但我不知道潜在的问题究竟是什么。
set time = `saclst KZDATE f $file61 | awk '{print $2}'`
set yea61 = `echo "$time" | awk 'BEGIN {FS="/"} {print $1}'`
set mon61 = `echo "$time" | awk 'BEGIN {FS="/"} {print $2}'`
set day61 = `echo "$time" | awk 'BEGIN {FS="/"} {print $3}'`
set time = `saclst KZTIME f $file61 | awk '{print $2}'`
set hou61 = `echo "$time" | awk 'BEGIN {FS=":"} {print $1}'`
set min61 = `echo "$time" | awk 'BEGIN {FS=":"} {print $2}'`
set sec61 = `echo "$time" | awk 'BEGIN {FS=":"} {printf "%5.2f", $3}'`
终端的标准输出如下:
在您的 C shell 脚本中的某处,您假设您可以
time
为自己的目的使用一个名为脚本变量的变量。不是这种情况。该变量具有特殊的语义,如 C shell 手册中所述。使用它,就好像它是一个你可以使用的任意变量,你可能会触发那些副作用,这正是你所看到的。