Day12

环境变量配置文件

一、环境变量配置文件简介

    1.学前知识:强制从新读取配置文件 source  格式:source  配置文件  注意:. 空格 配置文件=source空格配置文件。 

    2.环境变量配置文件的主要作用是定义对系统操作环境生效的系统默认环境变量,比如PATH(系统默认环境变量),HISTSIZE(历史命令保存条数),PS1(提示符),HOSTNAME(主机名)等,默认环境变量。

    3.系统环境变量配置文件一般有哪些?

      ①/etc/profile

      ②/etc/bashrc

      ③/etc/porfile.d/*.sh

      注意:/etc下的文件更改后是对系统所有登录用户生效,而且/etc/profile.d下以.sh结尾的文件都是配置文件。

      ④~./bash_profile

      ⑤~./bashrc

      注意:以~./开头是指登录用户的家目录,每个用户的家目录都有这个两个文件,更改后只对这个用户生效,其他家目录未更改的不生效。

    4.环境变量读取优先级

      

  5.其他配置文件和登录信息。

    ①~/,bash_logout  注销是生效的环境变量配置文件。

    ②~/.bash_histort  保存历史命令的文件

    ③sell登录信息。

      /etc/issue   本地终端欢迎信息

      /etc/issue.net  针对远程登录生效的欢迎信息

        注意:上面的欢迎信息默认不生效,只有ssh配置(/etc/ssh/ssh_config)文件,配置(加入“Banner/etc/issue.net”)生效了才生效。记得重启ssh服务

      /etc/motd/  不管远程还是本地都可以显示欢迎信息。

正则表达式与通配符

  一、正则表达式

    解析:正则表达式用来匹配文件中符合字符串,正则是包含匹配。grep、awk、sed等命令支持正则表达式。

  二、通配符:Linux中通配符用来匹配符合条件的文件名,通配符是完全匹配。ls、find、cp这些命令不支持正则表达式,只能通过shell自己的通配符来匹配。

字符截取命令

  ①grep  在文件中提取符合条件的行。

  ②cut  在文件中提取符合条件的字段  命令格式:cut【选项】文件名

                              -f  列号,提取第几列。

                             案例:指定提取第二列

                              

                              提取多列,用,分开。

                              

                             -d  分隔符,以什么为分隔符提取。默认分隔符是制表符,就是TAB键

                              

                              cut的局限性,当分隔符为空格的时候很难作用。

    学前知识:printf  格式化输出  命令格式:printf '输出类型输出格式’ 输出内容

                          输出类型:%ns  输出字符串,n代表输出几个字符串

                               %is  输出整数,n代表输出几个整数

                                                                                                               %m.ns:输出浮点数,m和n是数字代表整数位和小数位,比如%3.2s 就是输出3为整数2位小数

                                                                                   输出格式:

                                

  ③awk

    命令解析:awk命令一般跟printf命令结合使用,用来做字符串截取

    命令格式:awk  ‘条件1{动作1}条件2{动作2}...’文件名   注意:awk和后面的双引号之间有个空格。

    实例:  通过awk输出df -h 的内容

     

  ④sed

    命令解析:sed主要是一个数据流编辑器。主要用来将数据进行选取编辑、替换、删除、新增等动作。(这里感觉会更vim一样,但是vim主要对文本进行新增编辑等,主要针对于文本的操作)

    命令格式:sed 【选项】'【动作】'文件名  注意:动作要加单引号

        选项:    -n  默认sed命令会把所有的内容输出至屏幕,如果加入-n就只会把经过sed处理过的行输出到屏幕。

            -e:允许对输入数据应用多条sed来编辑。

            -i:用sed修改结果,也就是不只是你输出的屏幕的数据会更改,原数据也会更改。

    动作:

        

    实例:

        ①输出文件的第二行(用p参数,可以打印或者输出指定的行)

          

          注意:这里是要输出第二行,但是他把第二行输出了下,然后又把整个文档输出了。

        ②只输出文件的第三行(这里要把p跟i参数一起用,不然会像上面一样还会输出整个文档内容)

          

         ③删除文件第二到三行的数据。(这里只是对输出的数据做处理,原文件是没有更改的,如果要更改原文件,要加-i参数)

          

 字符处理命令

    1.sort

      命令格式:sort【选项】文件名

          选项:-f    忽略大小写

             -n    以数值型进行排序,默认是字符串型

             -r    取反

             -t    指定分隔符,默认是制表符

             -kn[,m]  按照字段范围排序,从n开始m结束。

    2.wc

      命令格式:wc【选项】文件名

          选项:-l     只统计行数

             -w    只统计单词数

             -m    只统计字符数

      命令实例:

          

           注意:这里不加参数直接统计全部,这里结果是37行、51个单词、1677个字符

条件判断

  1、按照文件类型进行判断

    

    格式:test -e /root  或者[ -d /root ]   一般用第二种

    学前知识: [ -e /root ] && echo "yes" || echo "no"

    解析:命令1&&动作1||动作2  如果命令1正确执行,那就会执行动作1,命令1报错了,那就会执行命令2。

  2、按照文件权限进行判断

    

   3、通过两个文件之间的比较来判断。

    

  4、两个整数之间的比较。

    

   5、字符串的判断

    

  6、多重条件判断

    

  

原文地址:https://www.cnblogs.com/kevinzr/p/11896847.html