linux中管道重定向

linux中管道重定向

Linux 给程序提供三种I/O设备:    查看是否成功  echo $?      需要再执行命令后直接使用

                标准输入:0

                标准输出:  1                      

                标准错误:  2    

        >   把输出的信息重定向到文件

        2>  把错误的输出信息重定向到文件

        &>  所有输出都重定向到文件      

    注意: >> 代表的是追加重定向,单独一个>会覆盖原有文件             

examp:    ls /root    /ada 2>> /dev/app      #列出错误信息(没有第二个目录) 追加输出到/dev/app,  这样屏幕就不会显示

 tr:转换和删除字符

                      [:alnum:] :字母和数字         [:alpha:] :字母          [:digit:]字  :数字      [:lower:] :小写字母  

                      [:print:] : 可打印字符          [:punct:]:标点符号    [:space:] :空白符     [:upper:]:大写字母

通过一个列子就就可以看明白了:

                   ls /roo >/app/ls  | tr -dc ‘[:alnum:]   # 前面是重定向到文本,再管道替换,-d是删除 -c是取反,本来是删除文本的alnum.

                                                                        加了-c代表保留alnum,其他的都删除了。

标准输入的例子: tr –d abc < /etc/fstab     # 删除fstab 文件中的所有abc    这里直接导入了文件,不需要再手动输入了

                         tr –d abc <<end         #这表示想手动输入,输完后需要单独输一行end结束退出  这也叫多行重定向;

                                      << 终止词    

                         Cat > filea < fileb         # 这里本来是要输入信息到filea,但是后面用文本fielb代替了输入,就不用再手动输入

                                                               注意两者文件名不能相同,否则会导致文件破坏。

管道:命令1 |  命令2 |  命令3 | …

         意思就是把命令1的输出结果作为命令2的输入,命令2的输出结果作为命令3的输入,以此类推;

         如果命令1发生错误,则不执行,想执行可以使用 |& 实行

exam:

        ls /root   /ls    &| tr ‘a-z ‘A-Z’        #如果不加&,则只会把ls /root 的输出信息换成大写,

                                                           加上&,会把错误的ls /ls的错误结果一同换成大写输出显示

用户的组管理和权限管理说明:   一个用户能使用什么权限,id说了算,root id 为0

     centos6:  系统用户id(1-499)    普通用户id(500-65535)

     centos7:  系统用户id(1-999)     普通用户 1000+

管理员组的id和上面一样的划分;

        Linux 安全上下文:

                      运行中的程序、进程,以进程发起者的身份运行:进程所能够访问资源的权限取决于进程的运行者的身份

       我的理解是:谁发起procsee,就使用谁的权限,比如是发起者是属组权限,那么就只有process的属猪权限,木有属主的权限

                          除非是process的属主发起,那么就拥有所有的权限。

 

★用户必须属于一个且只有一个主组; 组名同用户名,且仅包含一个用户:私有组也就是附加组可以多个

           用字符代替就是:u : g :  o      

     配置文件信息: /etc/passwd

                            /etc/shadow     这里存放的是用户的密码信息

                            /etc/group

                            /etc/gshadow    这里存放的是用户的组密码信息    

     passwd的文件格式:   username:passwd:uid:gid:用户的注释信息:home directory:shell     用冒号分割七段,其中密码信息保存在另外位置

    shadow就是真正的密码保存位置:

          username:passwd:密码最近修改时间:密码再过几天可以被变更;0表示随时可被变更:密码过期时间;999表示永不过期

          :过期前提醒时间(默认一周):密码过期后几天锁定:密码失效日期:

     这个记不住就cat /etc/shadow ; 通过里面一行行的信息对比,记得0是随时更改,999999永不过期,


    

原创文章,作者:shewei,如若转载,请注明出处:http://www.178linux.com/69614

(0)
sheweishewei
上一篇 2017-02-20 23:08
下一篇 2017-02-21 15:08

相关推荐

  • 第四周作业

    1、复制/etc/skel目录为/home/tuser1,要求/home/tuser1及其内部文件的属组和其它用户均没有任何访问权限。 [root@wlm ~]# useradd tuser1 [root@wlm ~]# cp -r etc/skel/ /home/tuser1/…

    Linux干货 2016-11-21
  • Linux sed命令详则

    sed命令 sed是一种流编辑器,它是文本处理中非常好的工具,能够完美的配合正则表达式使用,功能不同凡响。处理时,把当前的行储存在临时缓存区中,称为“模式空间”(pattern space),接着用sed命令处理缓存区中的内容,处理完成后,把缓存区的内容送往屏幕。接着处理下一行,这样不断重复,直到文件末尾。文件内容并没有改变,除非你使用重定向存储输出。Sed…

    2017-08-11
  • MBR&GPT分区基本原理

    1、磁盘系统为什么要分区?     •     优化I/O性能     •     实现磁盘空间配额限制       &…

    Linux干货 2016-08-30
  • Linux 下的帮助及文件管理

    1、whatis     whatis command 或 man -f command     仅能提供命令基本的介绍。不提具体用法。     基于数据库的查找,优点:检索速度快;缺点:缺乏实时性    &n…

    2017-07-15
  • n28 第二周作业

    n28 第二周作业

    Linux干货 2017-12-09
  • linux下find(文件查找)命令的详解

    文件查找命令locate和find详解 locate 配合数据库缓存,快速查看文件位置,非实时查找( 数据库查找) find 实际搜寻硬盘查询文件名称 ,实时查找 locate简介 locate命令其实是find -name的另一种写法,但是要比后者快得多,原因在于它不搜索具体目录,而是搜索一个数据库/var/lib/locat…

    Linux干货 2016-08-18