高级bash脚本指南(2)――笔记

 好吧,今儿再看一点

 

shell里的特殊符号

1.#——除“#!”之外当注释用

              当前面加"\"时转义,只作为普通的#符号用

2. ;——命令分隔符,在一行分隔两个及以上的命令

 

3. ;;——终止case的一个选项

        case "$variable" in

              abc) echo "\$variable = abc";;

              def) echo "\$variable = def";;

         esac

4. ` ——命令替换,`command`可以讲命令的输出赋给一个变量

        PWD=`pwd`

5. : ——空命令,相当于NOP(什么也不干),也可以认为是shell内建命令“true”(书上写的东西好多呀,可以以后回头再看看)

e.x  

a. 死循环

     while :              等价于      while  true

     do                                do

         operator 1                         operator 1

    done                               done

b. : > data.txt 与 cat /del/null > data.txt功能一样

     若data.txt存在,则将内容清空,不存在则创建

 

6. * ——通配符,匹配任意个字符

7. ? ——通配符,匹配单个字符

8. $ ——变量替换,变量前加$,表示取变量的内容

9. $? ——退出状态码变量(若shell文件正常退出的话,执行echo $?,结果是0)

10. {}——cp expr.{sh,backup}拷贝expr.sh到expr.backup

11. >, &>, >&, >> ——重定向

   command &> file  ——重定向command的stdout和stderr到file中

   command >&2 ——重定向command的stdout到stderr(2)中

12. &——后台运行命令,一个命令后边跟&表示在后台运行

 

 

你可能感兴趣的:(shell,脚本,bash)