• linux随笔2


    ---恢复内容开始---

    2016,12,20

    在linux里面不写这些扩展名,也是可以的,但是写这些扩展名是为了个管理员写的,好区分,但是linux本身不依靠扩展名来区分文件类型

    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~·

    对于挂载的理解:就是在linux里面每一个设备都是依仗目录来实行的,那么把某个设备和某一个具体的目录联系起来,就称之为挂载,其实在windows里面也存在这个挂载的概念,只不过  在windows里面,你插入优盘什么的,是系统自动给他分配盘符,而在linux里面是你手动给他放在某一个你设置的目录下。

    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

    完全匹配就是  必须完全一样;

    grep的作用是找到和它后面的包含匹配的内容

      例如   grep  “root”  /etc/passwd

    只要里面有root的地方,就输出;

    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

     

     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~·

    字符截取

    grep的作用是,在文件中提取符合条件的行;

    而cut和awk是提取列

    比如  你建立了一个文件是  student.txt

      内容是;vi student.txt

    ID Name gender Mark
    1 Liming M 86
    2 Sc M 90
    3 Gao M 82

    注意各个元素间的空隙是用Tab,即制表符敲得,不是空格

    然后  cut -f 2 student.txt   表示输出这个文件里面的第二行

    cut -f 2,4 student.txt   表示输出这个文件里面的第二行和第四行

      

    注意这个最后一个,这个/etc/passwd是一个以:作为分隔符的内容,所以 在筛选时,就用cut -d “这里是每列所用的分隔符符号” -f  行数 文件名

    ---恢复内容结束---

    2016,12,21

    看这个cat这条命令;

      他的意思是   找出 /etc/passwd的内容,然后从里面筛选出带有/bin/bash但是不含有root的行

    这个  -v就是取反的意思

    ~~~~~~~~~~~~~~~~~~~~~~~~

    这个的作用是:找到/etc/passwd里面的含有/bin/bash但是不含有root的行  ,然后再提取他们的第一行

    注意   cut一般和grep一起使用  一般没有单独使用他的

    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

    常用是    

    注意有多个格式符时,要加单引号;;;;;;

    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~·

    注意,在标准的输出里面 ,没有那个print,只有在awk里面才有print

    注意这个

    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

    cut不能在以空格作为分隔符的列,只能是具体的分割,如:   ,    或者制表符等等       如果要是各个列以空格作为分隔符,那么就用awk来提取相应列的内容

    只要是  cut能做的   awk都能做

    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

    大括号外面是条件,大括号里面是动作,

    注意这个是单引号   

    [root@/etc]# awk '{printf $2 " " $3 " "}' student.txt

    里面的转义字符用双引号括起来

    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~·

     这里的printf $5  代表是输出第五行,

     用cut是为了把那个%去掉

     

    加了BEGIN的作用是  就是在你后面的命令执行之前,先执行BEGIN后面的内容

    注意awk是在文件第一行读入后,然后进行操作,所以  只要你进行了操作,他的第一行是不会按照你的要求来输出的,

    为此 我们加一个BEGIN来使,在第一行没读入之前,就开始进行操作

    这个FS指定分隔符

    [root@/etc]# cat /etc/passwd |grep /bin/bash | awk 'BEGIN {FS=":"} {printf $1" " $3" "}'
    root 0
    wang12 500
    xiaoyoucai 501

    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

    就是在所有的命令完成后,在执行END后面的那个命令

    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~·

    其实它的作用相当于vi,但是为什么学习他呢,但是vi只能修改文件,

    但是vi不可以把命令的结果进行修改,

    如果要是对命令的结果进行修改,那么就得把命令输出的结果保存在文件中,然后在用vi进行修改

    但是对于sed不仅可以修改文件,而且可以把命令的结果进行修改,sed支持管道,所以才可以直接对命令的输出结果进行修改

    sed  流编辑器

    在这里,就是你在用sed时,加了-i这个选项,那么他就会把你原文件的内容也加改变,但是你没有加-i,那么他不会吧你原文件的内容改变,只会在输出时改变(类同于数据库里面的那个视图一样)

    注意这个不加-n  那么就会把你要求输出的行多加一次输出,,但是不会输出特定的行

    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

    这个没有加-i,所以不会对源文件产生干扰

    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

     

     !~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

    排序

    一般用的选项就-f,别的很少用

    这个指定分隔符的选项和cut的区别

    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

     一般用的就是中括号扩地这三个,只要知道那三个就行了

    ~~~~~~~~~~~~~~~~~~~~~~~~~~~

    $echo $?  这个$?(dollar  问)就是查看喔的上一条命令是否正确

    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

    这些都是给程序看的,就是 人可以直接ls就能看到,但是  你写程序时,这个就来判断文件是否存在

    ~~~~~~~~~~~~~~~~~~~~~~~~~~

    [root@/etc]# [ -f /etc/student.txt ] && echo "yes" || echo "no"

    这个就是看你的/etc/student.txt是否是文件,如果是,就输出  yes  如果不是  就输出no

    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~`

    常用就是前三个,后三个很少用

    # [ -w /etc/student.txt ] && echo yes || echo no 

    这个的作用是,判断 /etc/studnet.txt 是否有w权限,

    要是有就输出yes,否则输出no   ,注意:只要 你的所有者,所属组和其他人有任意一个有w权限,他都会输出这个yes,

    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

    其实这个比较大小主要是来写脚本的,要是你想呈现给人看  不是这样写,但是  你要给计算机看,那么你就得就得这样写

    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

    这个两个==判断字符。,

    而上面的那个eq是判断两个数值是否相等,

    一个=是用来个变量赋值

    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

    多重判断

    这个-a是逻辑与

    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~·

    这个du -sh是测试后面文件的大小;

    比如 这个 du -sh /var/lib/mnysql

    就是测试后面这个文件即/var/lib/mysql的文件大小

     

     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

    for循环

    例如

     还比如

    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

    第二种

    批量处理用户

    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

  • 相关阅读:
    【原创】枚举Android系统的进程、任务和服务的信息
    WPF学习笔记“控件”一:控件基本属性
    WCF学习笔记:基础一
    WPF学习笔记“布局”三:Grid分割窗口
    WPF学习笔记“XAML”一:基础
    WPF学习笔记“窗口”一:入门
    WPF学习笔记“形状”:基础
    WPF学习笔记“窗口”二:入门
    WPF学习笔记“窗口”四:三种方式不规则窗口实现大小的改变
    WPF学习笔记“窗口”三:入门
  • 原文地址:https://www.cnblogs.com/xiaoyoucai/p/6208681.html
Copyright © 2020-2023  润新知