linux学习笔记之管道重定向与正则表达式

author author     2022-09-19     396

关键词:

管道:前一个命令的输出,作为后一个命令的输入

命令1 | 命令2 | 命令3| 命令4 

#tee  即在显示器显示,又在文件在保存文件

例#echo “hello ,word” | tee /tmp/ hello.out

例#wc -l /etc/passwd | cut -d‘ ‘ -f1


I/O重定向 

 >     输出重定向 ,覆盖输出

  > > 追加输出

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

#set +C   关闭上述功能 

2> :重定向错误输出

2  >> :追加重定向错误输出

例:#ls /varr > /tmp/var.out 2> /tmp/var.out ,正确输出和错误输出覆盖/tmp/var.out 文件 

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

 <    输入重定向 ,

例:# tr ‘a-z‘ ‘A-Z‘ < /tmp

<<      追加输入

例1:#cat >> /tmp/file.txt <<EOF  :把键盘输入保存到file.txt 

例2:#cat <<EOF

      d|D  Show delect

      U|u   Show UID

      EOF            : 把内容信息在脚本中显示出来 


正则表达式:Regular Expression ,REGEXP

    Basic REGEXP  :基本

   Extended REGEXP :扩展

基本正则表达式:

元字符:

    .  任意单个字符

    示例 #grep ‘r..t’/etc/passwd

    *  其前面字符匹配次数

    .* 匹配任意长度的任意字符

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

    {m,n}  表示其前面的字符至少出现m次,至多出现n次

位置锁定:

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

    示例:grep ‘^r..t’ /etc/passwd

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

    示例: grep ‘b$‘ /etc/passwd

    ^$   :空白行

    示例:grep ‘[[:digit:]]‘ /etc/inittab

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

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

 

分组

     ()       (ab) 表示ab一个整体

    1 :表示第一个左括号及与之相对应的右括号之间的内容相匹配

    例:#grep `.*(l..e) .*  1’/tmp/

    例# grep ‘([0-9]).*1$‘ /etc/inittab

    例:#grep ‘^1([0-9]):1.*1$‘ /etc/inittab

扩展正则表达式:

字符匹配

    .  任意单个字符

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

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

 

次数匹配

    *  其前面字符匹配次数

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

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

    [m,n] 表示其前面的字符至少出现m次,至多出现n次

 

锚点字符

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

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

    <  表示其后的任意字符必须作为单词首部出现

    >  表示其前面的任意字符必须作为单词的尾部出现

 

分组

    ()

    1  2   3 

 

或者

|    :b|a   左边字符或者右边字符 

示例:   #grep -E --color ‘^[[:space:]]+ ‘ /boot/grub/grub.conf


本文出自 “Wish_亮” 博客,请务必保留此出处http://itwish.blog.51cto.com/11439802/1965086

linux综合顺练(涉及管道,正则,重定向用户及组管理权限管理等相关知识点)(代码片段)

...道","bash特性之重定向","grep命令与正则表达式的利用","linux下用户与组管理","linux下权限管理"等。下面给出上边提到知识点之前的博客链接 查看详情

linux学习第一周;标准输入输出和错误重定向与管道

标准输入标准输出标准错误重定向:<#标准输入重定向,默认为键盘输入,利用<可以将文件代替键盘输入>#标准输出重定向(会覆盖1.text里面的内容);例子:ls>/data/1.text(将ls命令输出结果重定向道1.text中)>>#标... 查看详情

linux管道符重定向与环境变量

——《Linux就该这么学》笔记输入输出重定向输入重定向  指把文件导入到命令中输出重定向  指把原本要输出到屏幕的数据信息写入到指定文件中输出重定向  分为标准输出重定向和错误输出重定向  每种有清空写入... 查看详情

管道符重定向与环境变量

...的比较少,输出用的比较多。通配符(个人认为类似正则表达式)顾名思义 查看详情

标准i/o与管道;用户组和权限;文件处理工具及正则表达式总结

四、标准I/O与管道标准输入和输出程序:指令+数据读入数据:Input输出数据:Output?打开的文件都有一个fd:filedescriptor(文件描述符)?Linux给程序提供三种I/O设备?标准输入(STDIN)-0默认接受来自键盘的输入?标准输出(STDOUT)-1默... 查看详情

学习之路浅谈:输出重定向,grep及正则表达式,egrep(代码片段)

地址总线:内存寻址数据总线:传输数据控制总线:控制指令>:输出重定向(会覆盖原有内容)>>:追加重定向(不会覆盖,追加输出)2>:重定向错误输出2>>:错误追加输出&>:重定向标准输出或错误输出至同一... 查看详情

linux学习笔记第六章标准io和管道

文章目录1.1标准输入输出1.2重定向1.2.1输出重定向1.2.2输入重定向1.3管道符1.4三通管道1.1标准输入输出IO:input/output输入输出标准输入stdin:默认是键盘标准输出stdout:默认是终端错误输出stderr:默认是终端1.2重定向1.2.1... 查看详情

linux重定向与管道符

​​重定向与管道符​​​​重定向​​​​管道:传送​​重定向与管道符重定向作用:将命令的执行结果输出到指定的文件中,而不是直接显示在屏幕上0标准输入键盘stdin仅读取1标准输出终端stdout仅写入2标准错误终端stderr... 查看详情

3.管道符重定向与环境变量(代码片段)

...道符、重定向与环境变量章节概述:目前为止,我们已经学习了数十个常用的Linux系统命令,如果不能把这些命令进行组合使用,则无法提升工作效率。本章首先讲解与文件读写操作有关的重定向技术的5种模式—标准覆盖输出重... 查看详情

linux重定向与管道

Linux——重定向与管道系统的输入输出包括:默认输入设备:标准输入,STDIN,描述符为0默认输出设备:标准输出,STDOUT,描述符为1             标准错误输出,STDERR,描述符为2 ... 查看详情

linux学习输入输出重定向和管道功能cat命令more命令(代码片段)

目录输入输出重定向输出重定向管道功能cat命令more命令@(输入输出重定向和管道功能)输入输出重定向输入重定向可以让用户将某个文件作为输入设备,输出重定向可以把某个文件作为输出设备,从而使文件更加灵活输入重定向... 查看详情

linux管道符和重定向与环境变量

...输出到屏幕文件描述为:2输入重定向输出重定向 二丶管道命令符作用:把前一个命令原本要输出到屏幕的 查看详情

linux学习第四课管道符重定向环境变量

 提前预习后果然再上课感觉超简单   查看详情

linux重定向与管道

重定向redirection 每个命令有输入源和输出目的地,默认行为,是标准输入和标准输出。大多数情况,标准输入是键盘,标准输出是屏幕。可以为单独的操作修改输入和输出,这就是重定向。重定向可以使某个命令从源文件输... 查看详情

linux数据流重定向与管道

数据流重定向简单来说就是把原本应该输出到某处(比如说屏幕)的数据,重定向其输出目的地,到其他的地方(比如文件)。linux中的输入与输出:  标准输入(stdin):默认从键盘输入  标准输出(stdout):执行的正常结果信息... 查看详情

linux第三天重定负管道符环境变量

...本要输出到屏幕的数据信息写入到指定文件中。在日常的学习和工作中,相较于输入重定向,使用输出重定向的频率更高,所以又将输出重定向分为了标准输出重定向和错误输出重定向两种不同的技术,以及清空写入与追加写入... 查看详情

linux入门——重定向与管道

 Linux给程序提供三种I/O设备      –标准输入(STDIN)-0默认接受来自键盘的输入      –标准输出(STDOUT)-1默认输出到终端窗口      –标准错误(STDERR)-... 查看详情

linux学习记录-命令替换-通配符-重定向-管道

命令替换:$(command),`command`touch./file-$(date+%F-%H-%M_%S).txtbash支持的引号有三种:``:命令替换"":弱引用,可以实现变量替换‘‘:强引用,不完成变量替换文件名通配globbing*任意长度的任意字符?任意长度单个[]匹配指定范围内的任... 查看详情