RHEL-用户基础-管道
管道
主要概念
1.用UNIX所谓的“管道”可以把一个进程标准输出流与另一个进程的标准输入流连接起来。
2.UNIX中的许多命令被设计为过滤器,从标准输入中读取输入,将输出传送到标准输出。
3.bash用“|”在两个命令之间创建管道。
进程的输出可以被重定向到终端显示器以外的地方,或者可以让进程从终端键盘以外的地方读取输入。(简而言之:进程的输入可以不从键盘,进程的输出也可以不从显示器)
一种最常用、最有利的重定向形式是把这二者结合起来,在这种形势下,一个命令输出(标准输出)被直接“用管道输送”到另一个命令的输入(标准输入)中,从而构成了Linux(和UNIX)所谓的管道(pipe)。
当两个命令用管道连接起来时,第一个进程的标准输出流被直接连接到第二个进程的标准输入序列。
连接在管道中的所有进程被称为进程组(process group)
管道:把前一个命令的输出,作为后一个命令的输入
命令1 | 命令2 | 命令3 |···
把passwd中用户名取出来,进行排序
[root@host2 tmp]# cut -d: -f1 /etc/passwd | sort
把passwd中UID号取出来,进行排序
[root@host2 tmp]# cut -d: -f3 /etc/passwd | sort -n
把passwd中用户名取出来,进行排序,然后变成大写
[root@host2 tmp]# cut -d: -f1 /etc/passwd | sort | tr 'a-z' 'A-Z'
【tee】
tee - read from standard input and write to standard output and files
从标准输入读取数据,并且发送至标准输出和文件
即:屏幕输出一份,保存至文件一份
[root@host2 tmp]# echo "Hello Red Squirrel" | tee /tmp/hello.out Hello Red Squirrel [root@host2 tmp]# cat hello.out Hello Red Squirrel
【wc】
wc - print newline, word, and byte counts for each file
只显示文件的行数,不能显示其他信息:
[root@host2 tmp]# wc -l /etc/passwd | cut -d' ' -f1 33
[备注:cut -d的''中间是空格]
题目:
1.统计/usr/bin目录下的文件个数
[root@host2 tmp]# ls /usr/bin/ | wc -l 1434
2.取出当前系统上所有用户的shell,要求每种shell只显示一次,并且按顺序进行显示
[root@host2 tmp]# cut -d: -f7 /etc/passwd | sort -u /bin/bash /bin/sync /sbin/halt /sbin/nologin /sbin/shutdown
3.思考:如何显示/var/log目录下每个的内容类型?
[root@host2 tmp]# file /var/log/*
4.取出/etc/inittab文件中的第5行
[root@host2 tmp]# head -5 /etc/inittab | tail -1 # System initialization is started by /etc/init/rcS.conf
5.取出/etc/passwd文件中倒数第9个用户的用户名和shell,显示到屏幕上并将其保存至/tmp/users文件中
[root@host2 tmp]# tail -9 /etc/passwd | head -1 | cut -d: -f1,7 | tee /tmp/users haldaemon:/sbin/nologin
6.显示/etc目录下所有以pa开头的文件,并统计其个数
[root@host2 tmp]# ls -d /etc/pa* | wc -l 4
7.不使用文本编辑器,将alias cls=clear 一行内容添加至当前用户的.bashrc文件中
[root@host2 tmp]# echo "alias cls=clear" >> ~/.bashrc
转载于:https://blog.51cto.com/liyasong/1573826
RHEL-用户基础-管道相关推荐
- RHEL6基础之十二RHEL用户和组基础
RHEL用户/组分类 对于Linux系统来讲,它只认识UID和GID,用户账号和组账号这些名字只是为了方便人们记忆而已 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 1 ...
- RHEL 5基础篇—linux的简介
RHEL 5基础篇-linux的简介 Linux是一种自由和开放源码的类Unix操作系统,存在着许多不同的Linux版本,但它们都使用了Linux内核.Linux可安装在各种计算机硬件设备中,比如手机 ...
- 打破凉凉诅咒:三个有大量用户基础的区块链项目
数字货币只是区块链的一个用途 许多人都是第一次接触区块链技术,尝试比特币水龙头,参与ICO空投,或者通过ICO或数字交易所投资加密货币. 然而,比特币和其他加密货币只是区块链技术的第一个用例.还有更多 ...
- 简单设计实现基于Forms认证的注册登录等用户基础服务
前一段时间博客园新闻里看到的雄文:你会做Web上的用户登录功能吗? 弱弱地表示,按照文章中的标准,写了这么长时间的程序,还真的不完全会写web上的用户登录功能,或者说不能完全按照这个标准写出复杂的登录 ...
- RHEL 5基础篇—文件和目录的管理
文件和目录的管理 linux命令的分类: 内部命令:指的是集成于Shell解释器程序内部的一些特殊指令,也成内键指令. 外部指令:指的是linux系统中能够完成特定功能的脚本文件或二进制程序,每个 ...
- RHEL 5基础篇—了解系统的引导过程
了解系统的引导程序 linux操作系统的引导过程一般包括以下几个阶段:开机自检.MBR引导.GRUB菜单.加载Linux内核.INIT进程初始化. 其中INTI进程初始化过程涉及的操作最多,也不好理 ...
- Linux用户基础操作入门
查看用户 输入 $who am i 输出 用户名和伪终端序号 创建用户 $sudo aduser命令 当前用户必须在sudo用户组,会在home目录里创建 切换用户 $su 命令切换用户 查看用户组 ...
- Linux入门基础 #6:Linux用户基础 .
用户,组 当我们使用Linux时,需要以一个用户的身份运行,用户限制使用者或进程可以使用,或不可使用哪些资源. 组,用来方便组织管理用户 每个用户拥有一个UserID,操作系统实际使用的是用户ID,而 ...
- php 微信网页授权获取微信access_token以及用户基础信息的方法
首先在微信公众平台配置好 官方文档地址 目录 1 第一步:用户同意授权,获取code 2 第二步:通过code换取网页授权access_token 3 第三步:刷新access_token(如果需要) ...
- RHEL 5基础篇—常见系统启动类故障
常见系统启动类故障 在linux系统的启动过程中,涉及到MBR主引导记录.GRUB启动菜单.系统初始化配置文件inittab等各方面,其中任何一个环节出现故障都有可能会导致系统启动失败.因此一定要注意 ...
最新文章
- 虚拟纹理与几何图像技术
- 在家办公如何提高效率?
- 你想学习Java ?资源都在这里了
- beyond compare比较工具设置
- [转]symbian基本类型转换
- npm WARN enoent ENOENT: no such file or directory
- 【软考-软件设计师】程序语言的基本概念
- 如何开发Web应用程序(非网站)
- 基于Docker的Mysql主从复制
- SHA1算法 C语言实现
- android sqlite 随机,Android+Sqlite 实现内容的随机内容推送(一)
- jvm:ObjectMonitor源码
- 浏览器利用框架BeEF测试
- 小游戏开发怎么选游戏引擎
- vs2013 番茄助手Visual AssistX插件的安装与使用
- 支付宝手机网页唤醒app支付
- 华为虚拟机服务器怎么使用教程,虚拟机装服务器教程
- Data + AI Summit 2022 超清视频下载
- 蚊子132 主要负责 FreeEIM 的文件读写模块
- python运用深度学习垃圾分类,acc达到98以上
热门文章
- 【pandas】读取大型文件技巧
- vba窗体 点击增加减少_EXCEL之VBA-窗体实例多页控件的基础应用
- python ssh库paramiko学习
- 计算机设备管理程序在哪,设备管理器在哪里查找?如何打开?
- 力扣-1337. 矩阵中战斗力最弱的 K 行
- css 设置文本文字溢出省略号显示
- linux v4l2进行视频采集编程介绍
- HAOI2011 Problem b 洛谷P2522
- Luogu 3423 [POI 2005]BAN-银行票据 (多重背包单调队列优化 + 方案打印)
- HotSpot VM运行时02---VM生命周期