shell语法-符号

来源:互联网 发布:Windows mr 编辑:程序博客网 时间:2024/06/08 08:57

#符号

  1. 行首以#开头但后面没有!的是注释
  2. #! 用于指定解释器
  3. 使用转义符\ 后#不再表示注释,而是字符echo The \# here does not begin a comment
  4. 参数替换echo ${PATH#*:} 这里替换的规则还需要进一步学习
  5. 数制转换:echo $(( 2#101010))

;分号

  1. 使用; 可以在一行写上两个或两个以上命令
  2. if <>;then<>语句 要加分号
  3. 终止case选项;;
case $var in    [0-9] echo "<9";;

(.)dot

  1. 等价于source命令
    在当前bash环境下读取并执行shell命令
source test.sh. test.sh       //equals

引号

双引号(“)和单引号(‘)都有阻止解释字符串中特殊字符比如#,\等的作用;
但单引号更为强烈,阻止string中所有特殊字符;
双引号阻止大部分特殊字符

斜线/和反斜线\

  1. 斜线=文件路径分隔符
    或者除法运算符
  2. 反斜线是一种对单字符的引用机制。\x 会转义字符x,等价于”x”,’x’
    \通常用来转义双引号和单引号,这样双引号和单引号就不会被解释成特殊含义了。

反引号(`)

命令替换
可以将命令的输出复制到另一个变量中去

cp `mkdir dir` test.sh dir

先创建back目录,然后复制test.h到back目录

冒号:

1,空命令=nop,也可以认为与shell内建命令true作用一样

while :                 //=while truedo    echo "endless loop"done

也可以在if/then中作占位符

if[$condition -gt 0]then :      #do nothingelse    ..
  1. 变量扩展/字串替换
$ : > test.sh  #empty file#same function as cat /dev/null > test.sh
0 0
原创粉丝点击