很多时候我们会用到Windows内置的Shell编程,尤其是自动化完成一些重复性的工作时,我现在在学习Windows Shell,也把自己的学习过程分享一下。
下面是一个小程序
@ECHO OFF
TITLE Hello World!
COLOR 0E
SET /p reply="How are you?"
IF NOT %reply% == "I'm fine,thank you.And you?" (
ECHO "Sorry,you are wrong!"
PAUSE
GOTO:EOF)
SET /p reply="I'm fine,too.Thanks."
IF NOT %reply% == "Bye" (
ECHO "Sorry,you are wrong!"
PAUSE
GOTO:EOF)
ECHO "Hello World Complete!"
PAUSE
把上面的程序复制到记事本中,然后改文件名为hello.bat,就可以运行了。
下面我们分析一下上面的程序:
第一行,是关闭Shell的ECHO功能,对于Shell编程,解释器会把文件中的所有内容显示在屏幕上,无论你写了什么,然后再显示执行后的结果,所以会很乱,现在关闭ECHO功能,让源文件不会显示在屏幕上。
第二行,是把这个显示窗体(即CMD窗体)的标题改为Hello World
第三行,是把窗体内字体的颜色设置为黄色
第四行,是用SET命令,并加上条件开关/p,来获得用户敲入屏幕的字符,并赋值给变量reply,而reply后面的等号和后面引号内的文字是直接显示在屏幕上的
第五行,判断如果用户输入的不是"I'm fine,thank you.And you?" 那么提示错误,关闭窗体,注意,输入要包含双引号,注意,这句话的左半括号前要有一个空格,否则是语法错误。
这个程序的意思是,屏幕上先出现:
How are you?
然后你回答:
"I'm fine, thank you.And you?"
然后屏幕出现
I'm fine,too.Thanks
然后你回答:
"Bye"
然后屏幕出现:
Hello World Complete!