对于特殊变量的使用,需要注意我们反而不能使用例如:${0}或者${$0}来获取当前脚本的文件名,因为0或者$0并不是我们定义的变量名,使用${}反而会识别不出来。所以对于特殊变量,我们正常使用就行。同时,平时我们写脚本的时候,相关的变量名也尽量不要和这些特殊变量重复,避免脚本执行错误。 小结 个人觉得相关的语法还是...
Shell中带$的特殊变量及对位置参数循环 特殊变量列表 $0当前脚本的文件名 $n 传递给脚本或函数的参数。n是一个数字,表示第几个参数。例如第一个参数是$1,第二个参数是$2当参数个数大于9时,用${n}表示,例如${10}表示第10个参数,如果写成$10则表示第一个参数,后边跟一个0; $# 传递给脚本或函数的参数个...
一般情况下$var与${var}是没有区别的,但是用${ }会比较精确的界定变量名称的范围 [root@localhost ~]# A=Linux [root@localhost~]#echo$AB #表示变量AB [root@localhost~]#echo${A}B #表示变量A后连接着B LinuxB 除此之外${}还有很多其他功能如下: 测试变量声明: file=/dir1/dir2/dir3/my.file.t...
不能使用bash里的关键字(可用help命令查看保留关键字)。 变量的使用 变量名前面加美元符号即可。 #定义变量 my_name="zh" #使用变量(建议加上花括号区分变量边界) echo $my_name #使用变量【推荐形式】 echo ${my_name} 1. 2. 3. 4. 5. 6. 7. 8. 设置变量只读 使用readonly 命令可以将变量定义为...
1)变量名称可以由字母、数字和下划线组成,但是不能以数字开头,环境变量名建议大写。 2)等号两侧不能有空格 3)在 bash 中,变量默认类型都是字符串类型,无法直接进行数值运算。 4)变量的值如果有空格,需要使用双引号或单引号括起来。 1.2.3案例 1.2.3.1定义变量a ...
子进程甚至无法使用export命令改变父shell中全局环境变量的值。 my_variable="I am sb"exportmy_variableecho$my_variablebashecho$my_variablemy_variable="I am not sb"exportmy_variableecho$my_variableexitecho$my_variable 尽管子shell重新定义并导出了变量my_variable,但父进程中my_variable变量依然保留原先的...
变量的定义 在Shell中定义变量非常简单,只需使用等号(=)将值赋给变量名即可。注意,变量名和等号之间...
双引号中可以有变量 可以出现转义字符 字符串拼接 greet="hello, "${name}"!" echo $greet 1. 2. 获取字符串长度:使用#,eg:echo ${#greet} 提取子字符串:eg:sub=${greet:5:10} 数组 在Shell中,用括号来表示数组,数组元素用"空格"符号分割开。如果使用,,将会赋值给第一个元素。array2=(1 2 3 4...
shell中${}的使用 在shell中经常要对变量进行字符串的截取操作,虽然截取字符串的方法很多,在这里用${}的方法操作变量应该是最简洁的方式。 1. 最小匹配和最大匹配 shell脚本中经常要对输入的参数截取其路径或文件名,例如变量file中保存着输入参数: file=/home/user/file1.txt...