尝试了这个,但是即使我把一个数字作为3美元,它仍然在"而不是数字"声明
if ($#argv == 3) then
if ( $3 !~ '^[0-9]+$' ) then
echo "Not numeric"
exit 1
else
echo "Numeric"
endif
endif
答案 0 :(得分:1)
强制性“请勿使用csh”链接 - http://www-uxsup.csx.cam.ac.uk/misc/csh.html和http://www.grymoire.com/unix/CshTop10.txt
那就是说,你的问题是你有单引用正则表达式模式。将其更改为此应该有效:
if ( $3 !~ ^[0-9]+$ ) then