SHELL编程

shell编程

shell:本质上就是计算机上的一个程序,这个程序在计算机启动的时候就自动启动。用来跟用户进行交互的

 


 

shell 的分类:

  GUI:gnome,KDE,Xface

  GLI:sh、csh、ksh、bash、tcsh、zsh

 


 

进程:

  在每个进程眼中看来,当前主机上只存在内核和当前 进程。进程是程序的实例,进程是程序的副本

 


bash的特性

   1、命令历史

  2、管道、重定向

  3、命令别名

  4、命令行展开

  5、命令行编辑

  6、文件名通配

  7、变量

  8、编程

 


  命令行编辑

    光标跳转

      Ctrl +a :跳到命令行首

      Ctrl +e:跳到命令行尾

      Ctrl +u:删除光标至命令行首

      Ctrl +k:删除光标至命令行尾

 


  命令历史:

    history

      功能:查看命令行历史

      选项:

       -c:删除全部命令历史

       -d n【m】 :删除第n个历史【开始的m个命令】

       -w:保存缓存中的命令历史至文件

    !!:执行上一条命令

    !n:执行命令历史的第n条历史

    !-n:执行命令历史的倒数第n条命令

    !STRING:执行命令历史中的以STRING开头的命令

    !$:引用上一条命令的最后的 一个字段

    Alrt+a\esc .

    命令补全:Tab键,两次Tab键将显示以你输入的命令的字母开头的所有的命令【搜索路径下】

    路径补全:跟命令用法一样【在你给出的路径下查找路劲】


  命令别名

     alias

     功能:定义和查看命令别名,在shell中定义的命令别名仅在当前的shell的生命周期。即该程序关闭之后即自动失效

     alias COMMANDALIAS 'command'

     unalias:

     功能:撤销命令别名


  命令替换

    $(command) 反引号:`COMMAND`

    bash支持的引号:

      ``:命令替换

      “”:弱引用,可以实现变量替换

      ‘’:强引用,不可以实现变量替换


  文件名通配;globbing

    *:任意长度的任意字符

    ?:单个任意字符

    []:匹配指定范围内的任意单个字符

      [ABC],[a-m],[a-z],[A-Z,][a-zA-Z0-9]

    [^]:配指定范围之外的任意单个字符

    [:space:]:所有的空白字符

    [:punct:]:所有的标点符号

    [:lower:]所有小写字母

    [:upper:]所有的大写字母

    [:alpha:]:大小写字母

    [:digit:] 数字

    [:alnum:]数字和字母

  


 

posted @ 2018-11-14 22:08  mindon  阅读(125)  评论(0编辑  收藏  举报