我是在csh / tcsh中编写脚本的初学者,这就是我需要你帮助的原因。我必须找出我的脚本的参数是否在stdin上正确写入。 我有一些脚本,例如名为'first_script',必须有这种形式的参数: first_script -d(这是我的问题)--->如果在-d参数之后有数字(整数 - 不仅仅是数字),我怎么能找到? 非常感谢帮助我。
答案 0 :(得分:0)
进程只能将字符串作为参数传递,因此您将获得的将始终是一个字符串。由您来解释所需的值(例如整数)。
在您的情况下,我认为检查给定字符串是否仅由数字组成可以解决您的问题。有很多方法可以做这个检查,但这是我最喜欢的:
if ( "$1" == "-d" ) then
expr "$2" : '[0-9]*$' > /dev/null && echo "We have a number" || echo "We have a non-number"
endif