• bash的基本特质


    1.命令 历史

      作用:查之前使用的命令

      关于命令历史的文件:每个用户家目录下面的.bash_hishory;

                在关机的时候,会自动写入一次(history -r 将内存中的命令历史写入文件)

      关于命令历史的变量(环境变量):

                env  //查看环境变量

                set  //查看更详细的环境变量参数

                HISTSIZE = 1000  数量

      history 的常见操作:

                查看命令历史

                !#  //#表示数值,执行#行的命令

                !string  //匹配最近一次的字符串

                !! //上一条命令

                !$   //上一条命令的最后一个参数

                  例:ls /etc  ——>ls !$

                    ESC+.

      history 的常见选项:

                -a

                -d

                -c

                history#  //显示最近的#行命令

     2.命令  补全

          Tab键

          作用:1.提示  2.自动补全

          扩展:制表符  /t  (代表4个空格键)

    3.目录补全

          Tab键

          作用:1.提示  2.自动补全

    4.命令展开——date命令

          1.{}:

          Linux的目录需要遵循什么规则?---FHS目录规则

          2.属性1     属性2

            a            1

            b             2

            mkdir -pv /var/{a,b}-{1,2}

          date   基于date命令来创建目录

             %F   CCYY-mm-dd

                %T   小时hh:MM:ss

             %D   mm/dd/YY

             %H   小时hh

             %M   分钟MM

             %S   秒ss

             %Y    CCYY

        clock  /   hwclock 查看硬件时钟(如果同步系统时钟与硬件时钟)

        cal  日历

             练习:通过for语句循环创建一个月的日志文件(.log)2019-08-06.http.log

                #touch `date +%F`.http.log

                for i in {1...30};do 

                  touch `date  +%Y-%m-$i`.http.log

                done

    5.tar   归档工具  (压缩与解压)

          【压缩只能对文件操作,不能对目录操作】

          压缩工具:

          gzip

          bzip2

          xz

          (zcat   //不解压查看)

          tar的常见参数:

            tar归档工具【可以对目录进行操作】

            -j bzip2

            -J xz

            -z  gzip

            -c create(压缩)

            -x  extract(解压)//可以不用指定的工具

            -f  指定文件名

            -v  显示详细信息显示verbose

            -t  不解压查看和zcat一样

          例子:tar   cjvf   2019-08.http.log.bz2   2018-08-*.http.log(压缩)

             tar   xvf   2019-08-*.http.log.bz2   -C   abc(解压)

          练习:编写脚本,每天02:20备份/etc/目录中所有文件,名称为当天日期;且保存文件为压缩文件

              crontab --> 20 2 * * * /root/xxx.sh

              vim xxx.sh

                  #!/bin/bash

                  tar  cJvf  /var/`date +%F`.xz  /etc/  

              chmod +x xxx.sh

    6.命令的执行状态

          在Linux中每一条命令执行后都会有两个结果:

            命令本身放回的内容

            其次,命令执行的结果状态

          $?变量,就是用来存放命令执行状态的变量:

            0 表示成功状态

            1-255  表示失败状态:

                        127--->命令找不到

              2--->文件或目录不存在

              13--->没有权限

              ......

    7.命令的快捷键

          ctrl + l

          ctrl + c

          ctrl + u  //删除光标前的字符

          ctrl + k  //删除光标后的字符

          ctrl + a  //把光标移动到开头

          ctrl + e  //把光标移动到结尾

          ctrl + w  //以空格为分隔符,去删除文件

          ctrl + r  //进入一个交互界面,搜索最近一次使用的命令

     8.alias别名

          系统启动时,读取一些特殊文件的顺序;

          alias cdnet="cd /etc/sysconfig/network-scriptes"   //这种方式定义的alias只能在当前shell成立

          /etc/profile           //定义环境变量(所有用户)---EXPORT HISTCONTROL=XXX

          /etc/bashrc          //定义本地变量 alias--(所有用户)

          ~/.bash_profile    //定义环境变量(指定用户)

          ~/.bashrc     //定义本地变量 alias--(指定用户)

          sources /etc/profile  或者  . /etc/profile

    8、文件通配符  -- globbing

               【文件通配符不是正则表达式】

                 ?   任意单个字符
                 *   任意长度的任意字符
                 []   指定范围内的任意一个字符
                 [^] 指定范围以外的任意一个字符    
                 [0-9A-Za-z]
                 [0-9] [a-z]  [A-Z]  [a-zA-Z]
               指定字符类:
                [:alnum:] 字母加数字, [:alpha:] 字母, [:cntrl:] , [:digit:] 数字, [:graph:], [:lower:] 小写字母, [:print:],
                   [:punct:], [:space:] 空格, [:upper:]  大写字母, and [:xdigit:]
            
            ^[[:space:]]*$   //有空格键的空行(正则表达式)

  • 相关阅读:
    【focus-lei 】微服务
    queryURLParams
    时间字符串的处理
    str.charAt()与str[]的区别
    数组去重函数封装
    数组去重的几种方法
    splice与slice区别
    变量与属性名的区别
    parseInt parseFloat Number三者转换的方式
    原生js实现选项卡样式切换的几种方式。
  • 原文地址:https://www.cnblogs.com/azuressy/p/11307840.html
Copyright © 2020-2023  润新知