• linux笔记_day09


    1.运算器、控制器、存储器、输入输出(IO)

      地址总线:内存寻址

      数据总线:传输数据

      控制总线:控制指令

      寄存器:cpu暂时存储器

    2.系统设定

       默认输出设备:标准输出,STDOUT,1(描述符)(显示器)

       默认输入设备:标准输入,STDIN ,0 (通常是键盘)

       标准错误输出:STDERR ,2 (显示器)

    I/O重定向:

        linux 输出重定向 >

        linux 输入重定向 <

      

    [root@good eric ~]# ls /etc > /tmp/list.out  (覆盖输出)   ls /etc >> /tmp/list.out  (追加输出) 
    [root@good eric ~]# cat /tmp/list.out 
    abrt
    acpi
    adjtime
    aliases
    aliases.db
    

       set -C 禁止对已经存在文件使用覆盖重定向,,,强制覆盖输出,则使用>|

       set + 关闭上述功能

      2> 重定向错误输出

      2>> 追加错误输出

      $>:  重定向标准输出或错误输出至同一个文件

    输入重定向

      

     tr - translate or delete characters
    [root@good eric ~]# tr 'a-z' 'A-Z'
    abc
    ABC
    ^C
    [root@good eric ~]# tr 'a-z' 'A-Z' < /etc/fstab  
    
    #
    # /ETC/FSTAB
    # CREATED BY ANACONDA ON FRI MAY  5 10:01:37 2017
    #
    # ACCESSIBLE FILESYSTEMS, BY REFERENCE, ARE MAINTAINED UNDER '/DEV/DISK'
    # SEE MAN PAGES FSTAB(5), FINDFS(8), MOUNT(8) AND/OR BLKID(8) FOR MORE INFO
    #
    UUID=91097F07-DAE0-4891-A853-8D0526E0A12B /                       EXT4    DEFAULTS        1 1
    UUID=0B9CD9FC-D21E-44D3-B755-DF2DD4C9A9F9 /BOOT                   EXT4    DEFAULTS        1 2
    UUID=225B2FF3-A0F2-4CFE-B23F-C3314610E775 SWAP                    SWAP    DEFAULTS        0 0
    TMPFS                   /DEV/SHM                TMPFS   DEFAULTS        0 0
    DEVPTS                  /DEV/PTS                DEVPTS  GID=5,MODE=620  0 0
    SYSFS                   /SYS                    SYSFS   DEFAULTS        0 0
    PROC                    /PROC                   PROC    DEFAULTS        0 0
    [root@good eric ~]# 
    
    [root@good eric ~]# cat <<END(结束符)
    > The first line
    > The Second line
    > END
    The first line
    The Second line
    [root@good eric ~]# cat >> /tmp/myfile.txt <<EOF(End of Line)
    > hello
    > my dear
    > EOF
    [root@good eric ~]# cat /tmp/myfile.txt 
    hello
    my dear
    [root@good eric ~]# 
    

    管道:(从一端输入东西,从另一端出来)命令也可以使用管道

    命令1 | 命令2 | 命令3 |...前一个命令的输出作为后一个命令的输入

      

    [root@good eric ~]# echo 'hello' | tr 'a-z' 'A-Z'
    HELLO
    [root@good eric ~]# echo 'redhat'|passwd --stdin hive
    passwd: Unknown user name 'hive'.
    [root@good eric ~]# echo 'redhat'|passwd --stdin cjy
    Changing password for user cjy.
    passwd: all authentication tokens updated successfully.
    [root@good eric ~]# cut -d: f1 /etc/passwd |sort
    cut: you must specify a list of bytes, characters, or fields
    Try `cut --help' for more information.
    [root@good eric ~]# cut -d: -f1 /etc/passwd |sort
    abrt
    adm
    apache
    avahi-autoipd
    bin
    cjy
    daemon
    
    [root@good eric ~]# wc -l /etc/passwd
    36 /etc/passwd
    [root@good eric ~]# wc -l /etc/passwd | cut -d' ' -f1
    36
    [root@good eric ~]# 
    

    tee:  -  read  from  standard  input and write to
           standard output and files

     文本查找的需要:

    grep: grep,  egrep,  fgrep print  lines matching a  pattern
      pattern:文本字符和正则表达式的元字符组合而成的匹配条件。

      grep [OPTIONS] PATTERN [FILE...]
        [root@good eric ~]# grep 'root' /etc/passwd
        root:x:0:0:root:/root:/bin/bash
        operator:x:11:0:operator:/root:/sbin/nologin
      

    正则表达式:

      元字符:

        .  匹配任意单个字符

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

        [^]匹配范围外的任意单个字符

        字符集合: [:digit:] ,[:lower:],[:upper:],[:punct:],[:space:],[:alpha:],[:alnum:] 用的时候再用一个[]

        

      匹配次数:

        * 匹配其前面的字符任意次

        .*任意长度的任意字符

        ?匹配其前面的字符1次或者0次 

        {m,n} 匹配前面的字符至少m次,至多n次

       位置锚定:

        ^:锚定行首,此字符后面的任意内容必须出现在行首

         $:锚定行尾,此字符前面的任意内容必须出现在行尾

        ^$:空白行

        <或者:其后面的任意字符必须作为单词首部出现 

        >或者:其前面的任意字符必须作为单词尾部出现

      分组:

        ()

          (ab)*

      后向引用:

        1:引用第一个左括号以及与之对应的右括号所包含的内容

        2:引用第二个左括号以及与之对应的右括号所包含的内容

     正则表达式:

        Basic REGEXP :基本

        extendedregexp 扩展

    grep :使用基本正则表达式定义的模式来过滤文本的命令

      -E 支持扩展的正则表达式

      -A n 后面n行也会被显示(After)

      -B n 前面n行也会被显示(Before)

      -C n 前后n行都会被显示(Context)

    扩展正则表达式:

      次数匹配:+匹配其前面的字符至少一次

            {m,n} 不需要反斜线

      分组:()   1  2

      或者:a|b  or

          C|cat 意思是:C或者cat

      egrep  扩展正则

      fgrep fast  不支持正则

  • 相关阅读:
    算法
    autoreleasepool和weak
    记录一下锁如何使用
    RunLoop相关知识
    NSTimer内存泄漏的解决方案
    ARC下block循环引用的解决方式
    MGJRouter源码解析及使用方法
    Instruments 中Time Profile的使用
    NSFileManager的基本使用
    Runtime相关知识
  • 原文地址:https://www.cnblogs.com/jycjy/p/6866249.html
Copyright © 2020-2023  润新知