这工作正常:
#!/bin/sh
ALTER="$1"
NAME="$2"
for pr in $(pgrep $NAME); do
elapse=$(ps -o etime= -p $pr)
[ "${elapse%:*}" -gt "$ALTER" ] && echo $pr
done
Run Code Online (Sandbox Code Playgroud)
但是如果我尝试将其切换到 CShell:
#!/bin/csh
set ALTER = "$1"
set NAME = "$2"
for pr in $(pgrep $NAME); do
set elapse = $(ps -o etime= -p $pr)
[ "${elapse%:*}" -gt "$ALTER" ] && echo $pr
done
Run Code Online (Sandbox Code Playgroud)
我收到一个Illegal variable错误。有任何想法吗?