成都网站建设-中国互联,大连网站的建设,企业 宣传 还要网站吗,广州seo托管1、双引号 双引号常用于包含一组字符串#xff0c;在双引号中#xff0c;除了 $、、 (反引号)有特殊含义外#xff0c;其余字符(如IFS、换行符、回车符等)没有特殊含义。$ a3$ echo $a输出结果为 3#xff…1、双引号 双引号常用于包含一组字符串在双引号中除了 $、、 (反引号)有特殊含义外其余字符(如IFS、换行符、回车符等)没有特殊含义。$ a3$ echo $a输出结果为 3在双引号中 $ 符仍有特殊含义。2、单引号 单引号的功能与双引号类似不过单引号中的所有字符都没有特殊含义$ a3$ echo $a输出结果为 $a可见在单引号中 $ 符是不起作用的。3、反引号反引号的功能是命令替换在反引号 中的内容通常是命令行程序会优先执行反引号中的内容并使用运行结果替换掉反引号处的内容。举个例子$ echo date这行命令会先执行反引号中的命令 date然后用 echo 命令打印出 date 命令的结果(与直接使用 date 命令效果一样)。再举个例子#!/bin/basha3b5cexpr $a \* $becho $cexit 04、$ 小括号 $( )$(...) 的作用与反引号一样也是命令替换#!/bin/bashfor file in $(ls /)doecho $filedoneexit 05、$ 双小括号 $(( ))$(( )) 的功能是进行算术运算括号中的内容为数学表达式使用 $(( )) 可以求数学表达式的值#/bin/basha3b5c$(($a * $b))echo $cexit 0上述脚本的输出结果为 15。使用 $(( )) 进行数学运算时不需要担心乘号( * )等运算符被 shell 误解为其他含义因为它们都在括号内。6、$ 中括号 $[ ]$[ ] 的功能与 $(( )) 一样都是用于算术运算。7、$ 大括号 ${ }${ } 的功能是变量替换类似于 $ 符但是 ${ } 比 $ 的替换范围更精准#/bin/basha3b5echo $abecho ${a}bexit 0这段脚本第一次输出 $ab 的时候会把 ab 视作一个变量然后打印 ab 的值显然为空第二次使用 ${a}b则会先输出 a 的值然后再向 STDOUT 打印一个字符 b。8、小括号 ( )小括号可以用来定义一个数组变量如下array1(1 2 3 4 5) // 在 shell 中定义一个数组变量array2(one two three four five)取数组元素的值也是使用 $ 符号如下$ echo $array1$ 1$ echo ${array1[2]} # 取数组中的一个元素索引用方括号括起来和大部分语言一样数组的索引是从 0 开始的$ 3$ echo ${array2[0]}$ one$ echo ${array2[*]} # 输出整个数组$ one two three four five这里使用了 ${ } 表达式进行变量替换。注意在 shell 中使用数组变量有时会引起一些问题而且数组变量的可移植性并不好因此在 shell 编程中数组变量使用得并不多。9、双小括号 (( ))双小括号命令允许在比较过程中使用高级数学表达式(( expression ))其中expression 可以是任意的数学赋值或表达式。相比 test 命令只能在比较中使用简单的算术操作双小括号命令提供了更多的数学符号可以在双小括号中进行各种逻辑运算、数学运算也支持更多的运算符(如 、-- 等)。常使用的双小括号来在 for 循环中实现 C 语言风格的迭代#!/bin/bashfor ((i 0; i 10; i))doecho -n $i doneecho exit 010、中括号 [ ]单个的中括号的功能与 test 命令一样都是用作条件测试。#!/bin/bashread -p please enter a number: numif [ $num -gt 10 ]; thenecho num 10elseecho num 10fi11、双中括号 [[ ]]双中括号提供了针对字符串比较的高级特性使用双中括号 [[ ]] 进行字符串比较时可以把右边的项看做一个模式故而可以在 [[ ]] 中使用正则表达式#/bin/bashif [[ hello hell* ]]; thenecho equalelseecho unequalfiexit 012、大括号 { }大括号用于括起一个语句块。如果需要在某些只能使用单个语句的地方(如AND、OR列表中)使用多条语句则可以用大括号将这多条语句括起来构造一个语句块。总结功能符号引字符串字符串中部分特殊符号有意义双引号 引用字符串字符串中特殊符号全都没有意义单引号 命令替换反引号、$()算术运算$(( ))、$[ ]、(( ))变量替换${}数组初始化()条件测试[ ]字符串比较[[ ]]括起一个语句块{ }注意本文归作者所有未经作者允许不得转载