软件安装.bat

@echo off

:InstallChoose
安装软件脚本.
echo #####################################################################
echo.
echo                         [1]. 安装office 2013
echo.
echo                         [2]. 安装金山词霸
echo.
echo			       [3]. 安装极点五笔
echo.
echo			       [4]. 结束安装
echo.
echo ########################################################################

set /p INS="请选择你是安装软件前面的序号[1-4]:"
if %INS%==4 goto End
if %INS%==1 goto o2013
if %INS%==2 goto kingt
if %INS%==3 goto WB 
goto InstallChoose

:o2013
call runas /user:administrator \\sharefolers\office2013.exe
goto installChoose

:kingt
call runas /user:administrator \\sharefolers\kingsoft.exe
goto installChoose
  
:wb
call runas /user:administrator \\sharefolers\wb.exe
goto installChoose

:End
echo.
echo.
echo ###################################
echo 谢谢设备您使用批处理程序,按任意键退出!
echo ###################################
pause>nul

如:set nb=6,就是令nb=6的意思。

语法形式:

SET [variable=[string]]

SET /P variable=[promptString]

SET /A expression

一、SET [variable=[string]]

示例1:

@echo off

set

pause

显示所有的变量的值

示例2:

@echo off

set nb=牛逼

echo %nb%

pause

请看 set nb=牛逼 ,这就是BAT直接在批处理中设置变量的方法!

set 是命令 nb是变量名 =号右边的“牛逼”是变量的值

在批处理中我们要引用这个变量就把nb变量名用两个%(百分号)扩起来,如%nb%

二、SET /P variable=[promptString]

有时候我们需要提供一个交互界面,让 用户自己输入变量的值,然后我们在来根据这个值来做相应操作,现在我就来说说这SET的这 种语法,只需要加一个“/P”参数就可以了!

实例1:

@echo off

set /p name=请输入你的名字:

echo 您的名字是:%name%

pause

set /p 是命令语法 name是变量名 =号右边的“请输入变量的值: ”,这个是提示语,不是变 量的值了!

运行后,我们在提示语后面直接输入davis,就会显示一行您” 您的名字是:davis”

三、SET /A expression

/A 命令行开关指定等号右边的字符串为被评估的数字表达式。

该表达式解析很简单并以递减的优先权顺序支持下列操作:

() - 分组

! ~ - - 一元运算符

* / % - 算数运算符

+ - - 算数运算符

« » - 逻辑移位

& - 按位“与”

^ - 按位“异”

| - 按位“或”

= *= /= %= += -= &= ^= |= «= »= - 赋值

, - 表达式分隔符

set的/A参数就是让SET可以支持数学符号进行加减等一些数学运算!

现在开始举例子介绍这些数学符号的用法:

看例子 这里的例子请直接在CMD下拷贝命令运行,不需要保存为BAT!

set /a count=1 + 1 set /a 语法, count变量名 1 + 1 数学式子

 拷贝运行后会直接显示一个2,或者运行完后我们输入echo %count%,也是二,这就是  

一个简单的加法运算!

复制代码 代码如下:

set /a count1=2 - 1 结果是多少呢?如果你看不到结果就echo %var%…..

set /a count2=2 * 2 乘法运算

set /a count3=2 / 2 除法运算

set /a count4=(1+1) + (1+1) 结果等于4 看得懂吧!

实例1:

复制代码 代码如下:

@echo off

set /a count1=1+1,count2=2+1,count3=3+1

echo %count1% %count2% %count3%

实例2:

复制代码 代码如下:

@echo off

set x=100

set y=1000

set /a z=x+y

echo 结果是:%z%

pause

有时候我们需要直接在原变量进行加减操作就可以用这种语法 set /a count+=1 这样的语法对应原始语法就是set /a count = %var% + 1 都是一样的结果,在原变量的值上在进行数学运算,不过这样写简单一点 在来一个:

set /a count*=2

其他都这么用,只要帮助里有这个语法! 另外还有一些用逻辑或取余操作符,这些符号,按照上面的使用方法会报错的 比如我们在CMD里输入set /a count=1 & 1 “与运算”,他并不会显示为1,而是报错, 为什么?对于这样的“逻辑或取余操作符”,我们需要把他们用双引号引起来,看例子

复制代码 代码如下:

set /a a1= 1 “&” 1 这样结果就显示出来了,其他逻辑或取余操作符用法

set /a a2= 1 “^” 1 异运算

set /a a3= 1 “%” 1 取模运算

set /a a4= 2 “«” 2 位左移

set /a a5= 4 “»” 2 位右移

实例3:

复制代码 代码如下:

@echo off

set a=100

set b=1000

set /a c=a+b

set /a c= c “«” 2

echo the result is :%c%

pause

这些符号也可以用&= ^= |= «= »= 这样的简单用法如

set /a count“&=” 1 等于set /a var = %var% “&” 1 注意引号

set的通常用法示例:

1、set 显示环境变量:

如:在命令行下输入:

set 会显示当前所有的系统环境变量

set c 会显示所有的以c开头或C开头的变量(也即不区分大小写);

set com 会显示所有的以com开头或COM开头的变量(不区分大小写);

2、set 设置环境变量,用法示例:set 表达式,

如:set str=ok

就是将变量str的值设置成字符串“OK”

注意:set str=ok>

这个在批处理运行过程中会出错,系统会提示:“命令语法不正确。”

原因是,因为 变量str 中的值“ok>”的字符“>“为一特殊字符,会被系统当成 定向 符处理,所以会运行出错,那如果确实要设置这样的变量str,值为 “ok>“怎么办呢?解决办法有二:将特殊字符转义,转义方法在该特殊字符前加一个“^”,如:set str=ok^> (这种方法比较少用,因为没有多少应用价值)

常见的解决办法,在set后面将整个表达式用 引号括起来,如:set “str⇒”

3、带参数 /a的set 数值计算

set的/A参数就是让SET可以支持数学符号进行加减等一些数学运算! 支持的数学运算包含(优先权递减):

() - 分组

! ~ - - 一元运算符

* / % - 算数运算符

+ - - 算数运算符

« » - 逻辑移位

& - 按位“与”

= *= /= %= += -= - 赋值

&= ^= |= «= »=

, - 表达式分隔符

用法示例:set /a num=2*10,这样变量num的值将变为:20

复制代码 代码如下:

set /a w=2 - 1 结果是多少呢?如果你看不到结果就echo %w%…..

set /a w=2 * 2 乘法运算

set /a w=2 / 2 除法运算

set /a w=(1+1) + (1+1) 结果等于4 看得懂吧!

set /a e=1+1,f=2+1,g=3+1 运行后会显示一个4,但我们用

echo %e% %f% %g%后看结果,会发现其他数学运算也有效果!,这就是”斗”号的 作用!

有时候我们需要直接在原变量进行加减操作就可以用这种语法

set /a w+=1 这样的语法对应原始语法就是set /a w = %w% + 1 都是一样的结果。

对于”逻辑或取余操作符”,我们需要把他们用双引号引起来,看例子

复制代码 代码如下:

set /a v= 1 “&” 1 这样结果就显示出来了,其他逻辑或取余操作符用法

set /a v= 1 “+” 1 异运算

set /a v= 1 “%” 1 取模运算

set /a v= 2 “«” 2 次方运算

set /a v= 4 “»” 2 这个不太记得数学里的叫法….

这些符号也可以用&= ^= |= «= »= 这样的简单用法如

set /a v“&=” 1 等于set /a v = %v% “&” 1 注意引号

4、带参数 /p 的set 等待用户输入

windows 2000 是没有choice这个命令,choice的等待用户输入功能就要通过set /p来实现

演示如下:

复制代码 代码如下:

@echo off set /p 员工名字=请选择员工名字: echo 你解雇了员工:%员工名字% pause>nul