8.1-用户和组(命令篇)

1、标准输入输出

我们知道,执行一个shell命令行时通常会自动打开三个标准文件,
    即标准输入文件(stdin),通常对应终端的键盘;
    标准输出文件(stdout)
    标准错误输出文件(stderr),这两个文件都对应终端的屏幕。
进程将从标准输入文件中得到输入数据,将正常输出数据输出到标准输出文件,而将错误信息送到标准错误文件中。
    
>默认为标准输出重定向,与 1>相同
2>&1意思是把 标准错误输出 重定向到 标准输出.
&>file意思是把 标准输出 和 标准错误输出 都重定向到文件file中
2>&1 > file 把错误输出定向到标准输出(此时标准输出为终端,所以输出到终端), 标准输出定位到文件
> file 2>&1 把标准输出定位到文件,错误输出到标准输出(此时标准输出指向文件,所以输出到文件)

():合并多个程序的STDOUT
( cal 2007 ; cal 2008 ) > all.txt

2、tr命令

tr  转换和删除字符
 tr [OPTION]... SET1 [SET2]
 选项:
        [root@localhost ~]# tr ‘a-z’ ‘A-Z’< /etc/issue
        CENTOS RELEASE 6.8 (FINAL)
        KERNEL \R ON AN \M

-c或--complerment:取字符集的补集
-d或--delete:删除所有属于第一字符集的字符
        [root@localhost ~]# echo "0123asdf..**-" |tr -cd '[0-9]'
        0123
-s或--squeeze-repeats:把连续重复的字符以单独一个字符表示
-t或--truncate-set1:将第一个字符集对应字符转化为第二字符集对应的字符

3、此处文档(Here documents)

用法:1、多行传递文本
[root@localhost ~]# cat << EOF
> nihao
> hello
> EOF
nihao
hello
EOF为标识符字符,可随意写。
用法:2、传递参数给需要参数的脚本或程序
vi $1 <<CLOUD
 i                  #    进入vim编辑模式
 This is line 1
 This is line 2
^[                  #    ^[ 一个特殊转义符用于返回命令行模式。写脚本时按ctrl+v再按<Esc>就能自动打出这个字符。
ZZ                  #    保存退出vim
CLOUD               #    结束标识符

 

4、管道

管道命令 操作符是:| ,它只能处理经由前面一个指令传出的正确输出信息,对错误信息信息没有直接处理能力。然后,传递给下一个命令,作为标准的输入。

“错误输出”默认不能通过管道转发,可利用2>&1 或 |& 实现
[root@localhost ~]# cat /e |& tr 'a-z' 'A-Z'
CAT: /E: 没有那个文件或目录

#set -C :禁止覆盖输出重定向至已存在文件,仅对当前shell有效
      >|:强制覆盖输出
#set +C:关闭上述特性

5、重定向到多个目标:tee命令

[root@localhost ~]# ls /root/ |tee a.txt|tr 'a-z' 'A-Z'
ANACONDA-KS.CFG
INSTALL.LOG
INSTALL.LOG.SYSLOG
公共的
模板
视频
图片
[root@localhost ~]# cat a.txt
anaconda-ks.cfg
install.log
install.log.syslog
公共的
模板
视频
图片

把命令1的STDOUT保存在文件名中,然后管道输入给命令2使用

-a:追加至文件而非覆盖



用户和组

用户和组.png





原创文章,作者:M20-1--孔祥文,如若转载,请注明出处:http://www.178linux.com/27275

(0)
M20-1--孔祥文M20-1--孔祥文
上一篇 2016-08-04 14:41
下一篇 2016-08-04 14:41

相关推荐

  • bash 面试题

    1、设计一个shell脚本,在/userdata目录下建立10个目录,即user1~user50,并设置每个目录的权限,其中其他用户的权限为:读;文件所有者的权限为:读、写、执行;文件所有者所在组的权限为:读、执行 [root@node1 script]# cat mkuserdata.sh #!/bin/bash # author jin.ren # da…

    Linux干货 2015-07-03
  • 万能的AWK

    awk:文本三剑客之一 #报告生成器,主要用来实现格式化文本输出,它能够实现在处理文本文件时对文档中的某字段有条件显示并以非常美观的文本; 它是编程语言的解释器;它也是一种完整的编程语言,它支持条件判断、循环、变量、数组、函数等等各种各样的编程语言所能实现的功能。 用法:awk [options] ‘program’ FILE &#8…

    2017-04-22
  • lvs——特殊的lvs-dr模型

    lvs-dr模型中:vip与dip/rip不在同一网段的实验环境设计及配置实现 实验拓扑: 提示:在路由器的内网IP接口上配置一个别名IP,此IP同VIP在同一网段 设计要点: VS上的VIP地址可以直接配置在DIP地址所在的网卡上,Linux主机上,一块网卡可以配置多个地址 RS上的VIP地址必须配置在lo接口上,并且还要关闭arp的响应和通告功能 外网接…

    Linux干货 2016-10-26
  • 说说linux权限管理(1)

    在这篇文章当中你可以看到: 1、linux系统文件普通权限 2、文件所属主的设置,组的指定 3、特殊权限 4、acl权限 5、su命令及其注意事项和sudo权限 6、权限管理的注意点 0、首先,在linux下用户账户是分角色的,由于角色的不同,每个角色,每个用户的的权限和所能完成的任务也不同。而在实际管理中,用户的角色是通过UID(用户id号)来标识的,每个…

    Linux干货 2016-04-30
  • 硬盘基础知识及 MBR、GPT分区格式

    一,硬盘知识     硬盘接口类型:          并行:             IDE: 133MB/s &n…

    Linux干货 2016-09-19
  • linux 故障—-/boot删除 修复

    LINUX        /BOOT        SHANCHU 光盘进入resuce  第①步;修复内核文件 shell start shell 首先先切根 chroot &n…

    Linux干货 2016-09-13