linux学习笔记-第十一课-shell基础


       1、历史命令(history↓、↑、!

       history的默认值是1000,该值在/etc/profile中指定

       命令history,用来查询最近命令历史记录;

       使用方向键(↑)可以查询上一个命令;

       使用方向键(↓)可以查询下一个命令;

       感叹号(!!)可以重新执行最近执行的命令;

       在(!)后面输入要查询命令的首字符或者字符串,可以搜出符合该字符串的最近的命令;

       (!n)代表执行history命令中标记的第n条命令(注:n也可以为负数,如!-2代表执行倒数第二个命令);

       (!#)可以执行2次命令




        2、键盘上的(tab)可以进行命令或者文件路径的补全



      

        3、别名(alias)

        别名用户自定义的指令缩写形式

        alias用来查询所有的别名

        创建别名:

        格式:alias [别名]=‘需要执行的命令‘

        例如:alias ls=‘ls --color=auto --time-stye=long-iso‘

        删除别名:

        格式:unalias 别名



      

        4、通配符(元字符)

        (.)   匹配一个字符,包括空格

        (?)   匹配一个字符

        (*)   匹配0个以上的字符

        ([])   匹配中括号内任意的一个字符

        (\)    脱义符,用字符本身的意思进行解析

        (|)    管道符,将管道前面的命令输出的结果,传给管道后面的命令作为参数




        5、I/O重定向

             >  用于输出重定向

             >>  用于追加输出重定向



            标准I/O                                                                           文件描述符数字
标准输入(stdin):键盘                                                                        0
标准输出(stdout):显示器                                                                  1
标准错误(stder):显示器                                                                    2


            2>&1 表示将标准错误(2)也传递到标准输出(1)传递的位置,&表示在后台执行当前命令;

              

            <  用于标准输入




          6、作业控制

          ctrl+z     暂停命令

          jobs     在当前shell中显示自己的进程

          bg      向后台传送进程

          fg       向前台传送进程




         7、变量

         变量分类:全局变量、局部变量和环境变量

         查看变量的命令:env或者set(可以列出shell中未声明的自定义变量)

         变量的命名:变量名可以由字母、数字或者下划线组成,但是不能以数字开头;

         定义变量

         变量名=变量值

         注:“=”的两侧不能有空格,变量值中如果包含空格等符合需要使用双引号括起来;

         自定义的变量只在当前的shell中生效,如果想要其子shell中也生效定义的变量需要使用export命令进行声明;

         格式:变量名=变量值  ; export    变量名      

                   或者    

                   export     变量名=变量值

         变量的引用;例如:value=11;echo  $value

         取消变量:unset  变量名


         /etc/profile:初始化系统全局shell变量

         /etc/bashrc:定义用于shell函数和别名的系统全局变量

         ~/.bash_profile:用户个人的环境设置文件

         ~/.bashrc:用户个人的别名及变量设置文件

         ~/.bash_logout:系统退出设置文件

        

        source命令:立即适用shell环境设置文件。也可以用 “.” 。

  




引用符号
说       明
 双引号
除美元符号、单引号、反引号和反斜线之外,其他所有的字符都将保持字面意义
单引号
所有字符都讲保持字面意义
反引号
引号中的字符串将被解释为shell命令
反斜线
转义字符,屏蔽字符的特殊意义

        



       8、常用的文本处理命令

            1)命令cut用于选取文本列

            格式:cut  [选项] [文件]

            选项:-c :指定字符

                      -d :指定分隔符

                      -f :指定要选择的字段


            2)命令sort用于文本的排序

            格式:sort [选项] [文件]

            选项:-t:指定字段分隔符

                      -u:删除重复的行

                      -k:自定义关键字

                      -d:根据字典顺序排序

                      -n:根据算数值进行比较

                      -r:逆向排序


             3)命令wc产看文件统计信息

             格式:wc [选项] [文件]

             选项:-l:统计文件的行数

                       -w:统计文件的单词数

                       -c:统计文件的字节数

                       -L:统计文件中最长的行的长度


              4)命令uniq文本去重

             格式:uniq [选项] [文件]

             选项:-c:统计重复行出现的次数

                       -d:显示文件中有重复的行并只显示一次

                       -D:显示文件中所有重复的行


             5)命令tr替换或删除字符

             格式:tr [选项] [参数1] [参数2]

             选项:-d:删除指定的字符

           

             6)命令tee重定向并显示


             7)命令split分割

             格式:split [选项] [文件]

             选项:-l:以行为单位

                       -b:以字节为单位

                       -d:以数字填充文件名末尾

     



            9、使用多重指令

             分号(;):用来连接多个命令,第一个命令不论是否成功,都执行第二个命令

             符号(&&):当第一个命令正常执行,才执行第二个命令

             符号(||):当第一个命令执行失败,才去执行第二个命令        


               






本文出自 “MyLinux” 博客,请务必保留此出处http://mylinuxlife.blog.51cto.com/4706737/1631108

郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。