Genesis2000脚本编写常用命令解析
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
1. switch 的用法,注意每一个case 必须要以breaksw 结尾
否则会继续执行下一个case 的命令
(1) 另外,$< 的意思是取得使用者的stand input
(2) echo 若加上-n 的选项,则游标会停留在该行最后
echo -n "Input one color: "
set STOPLIGHT = $<
switch ($STOPLIGHT)
case red:
echo "red"
breaksw
case orange:
echo "orange"
breaksw
case green:
echo "green"
breaksw
default:
echo "you input $STOPLIGHT"
endsw
--------------------------------------------------------------------
2. 利用set 来取得变数,set ABC = "I am ABC"
也可以利用`command` 来取得命令
且外,case 也可以用万用字元* 来代替
set VER = `uname -r`
switch ($VER)
case 5.5:
echo "run the setup of $VER"
breaksw
case 5.3:
echo "run the setup of $VER"
breaksw
case 5.*:
echo "like 5.x"
breaksw
case 4.*:
echo "like 4.x"
breaksw
default:
echo "no idea"
endsw
-------------------------------------------------------------------- 3. if 的语法,比较数字
set n1 = 1
set n2 = 2
if ($n1 == $n2) then
echo "$n1 Equal $n2"
else
echo "$n1 Not Equal $n2"
endif
-------------------------------------------------------------------- 4. if 的语法,比较字串
set n1 = abcdef
set n2 = abcde
if ($n1 == $n2) then
echo "$n1 Equal $n2"
else
echo "$n1 Not Equal $n2"
endif
-------------------------------------------------------------------- 5. if 的语法,比较相似的字串
set n1 = abcdef
set n2 = abcde
if ($n1 =~ $n2) then
echo "$n1 Like $n2"
else
echo "$n1 Not Like $n2"
endif
-------------------------------------------------------------------- 6. if 的语法,比较数字的大小
set n1 = 1
set n2 = 2
if ($n1 > $n2) then
echo "$n1 > $n2"
else
echo "$n1 < $n2"
endif
-------------------------------------------------------------------- 7. 每分钟执行一次的程式
# mm 等于当天时间的【分钟】数
set mm = `date | cut -d' ' -f4 | cut -d: -f2`
if ( -r $0.out ) then
rm $0.out
touch $0.out
else
touch $0.out
endif
while ( $mm <= 16 )
set mm = `date | cut -d' ' -f4 | cut -d: -f2`
echo "$mm now is `date`"
sleep 60
#echo "$mm now is `date`" >> $0.out
end
echo "Over" >> $0.out
-------------------------------------------------------------------- 8. 一个回圈的范例,并且利用expr 去作加的动作
回圈的语法如下:
foreach number (1 2 3)
echo $number
end
set counter = 0
while ($counter <= 10)
echo "sleeping for 5 seconds"
sleep 5
counter = `expr $counter + 1 `
end
-------------------------------------------------------------------- 9. 设定一个用当天月份与日期作为档案名称的程式
如今天是10/02 , 则$prefix 会等于该程式+ 1002