zoukankan      html  css  js  c++  java
  • Linux重定向命令

     
     
     
    1. 标准输入的控制
    语法:命令 文件将命令的执行结果送至指定的文件中。
    例如:
    ls -l > list 将执行“ls -l” 命令的结果写入文件list 中。
    语法:命令>! 文件将命令的执行结果送至指定的文件中,若文件已经存在,则覆盖。
    例如:
    ls -lg >! list 将执行“ls - lg” 命令的结果覆盖写入文件list 中。
    语法:命令>& 文件将命令执行时屏幕上所产生的任何信息写入指定的文件中。
    例如:
    cc file1.c >& error 将编译file1.c 文件时所产生的任何信息写入文件error 中。
    语法:命令>> 文件将命令执行的结果附加到指定的文件中。
    例如:
    ls - lag >> list 将执行“ls - lag” 命令的结果附加到文件list 中。
    语法:命令>>& 文件将命令执行时屏幕上所产生的任何信息附加到指定的文件中。
    例如:
    cc file2.c >>& error 将编译file2.c 文件时屏幕所产生的任何信息附加到文件error 中。
    3. 命令语法
    command > filename 把标准输出重定向到一个新文件中
    command >> filename 把标准输出重定向到一个文件中(追加)
    command 1 > fielname 把标准输出重定向到一个文件中
    command > filename 2>&1 把标准输出和标准错误一起重定向到一个文件中
    command 2 > filename 把标准错误重定向到一个文件中
    command 2 >> filename 把标准输出重定向到一个文件中(追加)
    command >> filename 2>&1 把标准输出和标准错误一起重定向到一个文件中(追加)
    command filename2 把command命令以filename文件作为标准输入,以filename2文件作为标准输出
    command &m 把标准输出重定向到文件描述符m中
    command 
     
     

    Linux命令重定向与管线命令

       
    命令重定向: 在Bash命令执行中,除了有>符号,还有3种输出输入状况,分别是: 1 标准输入: 代码为0,或称为stdin,使用方式为< 2 标准输出: 代码为1,或称为stdout,使用方式为1> 3 错误输出: 代码为2,或称为stderr,使用方式为2> >>  累加到文件中,文件累加,旧数据保留. 例: [test @test test]# ls –al 1>list.txt 2>list.err 将显示数据正确输出到list.txt,错误的数据输出到list.err
    >与>>比较,区别:
    >: 将原来由屏幕输出的正确数据输出到>右边的文件或设备
    >>: 将原来由屏幕输出的正确数据输出到>>右边,与>不同的是,该文件将不会被覆盖,而新的数据将以累加方式添加到文件的最后面. /dev/null是什么呢?
    答: 基本上,它有点象一个无底洞,专门收集垃圾,当您输入的任何东西导向到这个虚拟的垃圾桶,它就会凭空消失,非常有用.
    例: [test @test test]# find /-name testing 1> list_right 2> /dev/null
    如果要把数据都写到同一个文件中 [test @test test]# find /-name testing 1> list_right 2>&1

              管线命令 管线命令使用的是”|”界定符号 管线命令”|”仅能处理经由前一个指令传来的正确信息,也就是标准输出(stdout)信息,对于标准错误信息并没有直接处理能力.
    每个管线部分都是指令,而后一个指令的输入乃是前一个指令的输出.
    常用的管线命令: cut 语法: [root @test /root]# cut –d “分隔字符” [-cf] fields 参数说明: -d: 后面接的是分割字符,默认是空格符 -c: 后面接的是第几个字符 -f: 后面接的是第几个区块 cut的主要用途在于将同一行里的数据进行分解,最常用在分析一些数据或文件数据的时候,因为有时候我们会以某些字符当作分割参数,然后将数据加以切割,以取得我们需要的数据(常用与分析我们的日志文件).
    sort 语法: [root @test /root]# sort [-t 分隔符] [(+起始)(-结束)][-nru]
    参数说明: -t 分隔符: 使用分隔符隔开不同区块,默认是tab +start –end: 由第start区块排序到end区块 -n: 使用纯数字排序(否则会以字母方式排序) -r: 反向排序 -u: 相同出现的一行,只列出一次
    [root @test /root]# cat /etc/passwd | sort 将列出来的个人帐号排序
    wc 语法: [root @test /root]#  wc [-lmw]
    参数说明: -l: 多少行 -m: 多少符号 -w: 多少字
    例: [root @test /root]# cat /etc/passwd | wc –l 这个文件里有多少行.
    uniq 语法: [root @test /root]#uniq
    uniq删除重复的行从而只显示一个

    tee 例: [root @test /root]# last | tee last.list | cut –d “ ” –fi 使用tee,会将数据同时传给下一个命令执行,也会将数据写入last.list文件中

    tr 语法: [root @test /root]# tr [-ds] SET1 参数说明: -d: 删除SET1这个字符串 -s: 取代重复的字符
    例: [root @test /root]# cat /etc/passwd | tr –d: “:”这个符号在/etc/passwd中不见了

    split 语法: [root @test /root]# split [bl] 输入文件 输出文件前导字符 参数说明: -b: 以文件SIZE来分 -l: 以行数来分
    例: [root @test /root]# split –l 5 /etc/passwd test 会产生testaa,testab,testac等文件
  • 相关阅读:
    AUDIT审计的一些使用
    HOW TO PERFORM BLOCK MEDIA RECOVERY (BMR) WHEN BACKUPS ARE NOT TAKEN BY RMAN. (Doc ID 342972.1)
    使用BBED理解和修改Oracle数据块
    Using Class of Secure Transport (COST) to Restrict Instance Registration in Oracle RAC [ID 1340831.1]
    调试利器GDB概念
    第4章 思科IOS
    第3章 ip地址和子网划分
    第2章 TCPIP
    2020年阅读过的黑客资源推荐篇
    第1章 计算机网络
  • 原文地址:https://www.cnblogs.com/qmfsun/p/3813922.html
Copyright © 2011-2022 走看看