这里要讲的会包含shell变量,python变量和bat变量
一、shell变量
1,定义变量
注意,变量名和等号之间不能有空格,等号“=”前后都不能有空格,否则不能识别。这可能和你熟悉的所有编程语言都不一样。同时,变量名的命名须遵循如下规则:
- 首个字符必须为字母(a-z,A-Z)。
- 中间不能有空格,可以使用下划线(_)。
- 不能使用标点符号。
- 不能使用bash里的关键字(可用help命令查看保留关键字)。
2.引用变量
引用变量时,变量名前加美元符号$;
变量名外面可加花括号,加不加都行,加花括号是为了帮助解释器识别变量的边界,最好养成加花括号的习惯,可以避免误识别。
3.字符串
字符串可以用单引号,也可以用双引号,也可以不用引号。(若是字符串中包含空格就必须有引号)
单引号
单引号字符串的限制:
- 单引号里的任何字符都会原样输出,单引号字符串中的变量是无效的;
- 单引号字串中不能出现单引号(对单引号使用转义符后也不行
双引号
双引号的优点:
- 双引号里可以有变量
- 双引号里可以出现转义字符
4.注释
以“#”开头的为注释
5.传递参数
执行shell脚本时,可以向脚本传递参数,脚本内获取参数的格式为:$n。n 代表一个数字, $0 为执行的文件本身(脚本名称),$1 为执行脚本的第一个参数,$2 为执行脚本的第二个参数
二、python变量
1.定义变量
等号(=)用来给变量赋值 等号(=)运算符左边是一个变量名,等号(=)运算符右边是存储在变量中的值。同时变量命名规范如下:
a、变量名只能是字母, 数字,下划线
b、变量的第一个字符不能是数字
c、变量名中不能有空格
d、关键字不能声明变量
2.引用变量
使用变量时,直接引用变量名即可,不需要任何引用符号。
3.字符串
字符串用单引号'或双引号"括起来。
单引号,双引号(在Python里字符串既可以用单引号也可以用双引号,仅显示单行文字),三引号(显示多行文字)
4.注释
python中用"#"进行注释
5.传递参数
想python脚本传递参数,脚本中获取参数用sys.argv[0]表示python脚本的路径,sys.argv[n]表示传递的第n个参数。
三、bat
1.定义变量
bat中用set命令定义变量
set 变量名=号右边的是要给变量的值
set /p 交互式变量,即需要用户输入
set /a 算术表达式
2.引用变量
对变量引用用%,即%var%,延迟变量用!,即!var!(圆括号中定义的变量需要用延迟变量扩展),for定义的变量用%%
3.字符串
bat中的字符串一般变量相同,不需要引号
4.注释
bat中用双冒号进行注释::
5.传递参数
给bat脚本传递参数,脚本内部获取参数用%1 %2 %3 %4 %5 ......一直到%9,表示第几个参数。%0最好不要乱用,可能表示bat脚本的绝对路径,也可以无限循环。
bat内部函数(标签)传入的参数使用%~1,%~n进行引用