linux ‘|’ 与重定向 实例详解
重定向与管道
----------小命令大作为
>:重定向标准输入出定向命令
用的最多的就是向某个文件中写入内容
[root@localhost ~]# echo "Hello,world">1.txt
[root@localhost ~]# cat 1.txt
Hello,world
把某个命令的结果重定向到某个文件中
[root@localhost ~]# cat /etc/passwd >2.txt
[root@localhost ~]# cat 2.txt
root:x:0:0:root:/root:/bin/bash
bin:x:1:1:bin:/bin:/sbin/nologin
daemon:x:2:2:daemon:/sbin:/sbin/nologin
adm:x:3:4:adm:/var/adm:/sbin/nologin
lp:x:4:7:lp:/var/spool/lpd:/sbin/nologin
sync:x:5:0:sync:/sbin:/bin/sync
shutdown:x:6:0:shutdown:/sbin:/sbin/shutdown
halt:x:7:0:halt:/sbin:/sbin/halt
mail:x:8:12:mail:/var/spool/mail:/sbin/nologin
uucp:x:10:14:uucp:/var/spool/uucp:/sbin/nologin
operator:x:11:0:operator:/root:/sbin/nologin
games:x:12:100:games:/usr/games:/sbin/nologin
gopher:x:13:30:gopher:/var/gopher:/sbin/nologin
ftp:x:14:50:FTP User:/var/ftp:/sbin/nologin
nobody:x:99:99:Nobody:/:/sbin/nologin
dbus:x:81:81:System message bus:/:/sbin/nologin
usbmuxd:x:113:113:usbmuxd user:/:/sbin/nologin
vcsa:x:69:69:virtual console memory owner:/dev:/sbin/nologin
rtkit:x:499:497:RealtimeKit:/proc:/sbin/nologin
avahi-autoipd:x:170:170:Avahi IPv4LL Stack:/var/lib/avahi-autoipd:/sbin/nologin
abrt:x:173:173::/etc/abrt:/sbin/nologin
haldaemon:x:68:68:HAL daemon:/:/sbin/nologin
gdm:x:42:42::/var/lib/gdm:/sbin/nologin
>>:追加标准输出重定向
[root@localhost ~]# echo "王鹏健,java高级工程师" >> 1.txt
[root@localhost ~]# cat 1.txt
Hello,world
王鹏健,java高级工程师
如果不用追加重定向的话就会将文件原来的内容替换掉,如
[root@localhost ~]# echo "马强,在北京" >1.txt
[root@localhost ~]# cat 1.txt
马强,在北京
[root@localhost ~]#
2>:重定向错误标准输出
如果命令有错误,也会执行命令,并将错误信息输出在文本里面,如:
[root@localhost ~]# ls /etc/pas 2> 1.txt
[root@localhost ~]# cat 1.txt
ls: cannot access /etc/pas: No such file or directory
[root@localhost ~]#
2>>:追加重定向错误标准输出
将命令错误信息追加到文本里面
[root@localhost ~]# echo "马强,在北京" >1.txt
[root@localhost ~]# ls /etc/pas 2>>1.txt
[root@localhost ~]# cat 1.txt
马强,在北京
ls: cannot access /etc/pas: No such file or directory
&>:将重定向标准输出或者错误重定向到同一文件夹内
错误输出
[root@localhost ~]# ls /var2 &> 1.txt
[root@localhost ~]# cat 1.txt
ls: cannot access /var2: No such file or directory
[root@localhost ~]#
正确输出
[root@localhost ~]# ls /var &> 1.txt
[root@localhost ~]# cat 1.txt
account
cache
crash
cvs
db
empty
games
gdm
lib
local
lock
log
nis
opt
preserve
run
spool
tmp
www
yp
[root@localhost ~]#
<:输入重定向
可以将结果作为另一个命令的使用,如
将/etc/passwd 文件里面的内容全部转换成大写
tr ‘a-z’ ‘A-Z’ </etc/passwd
[root@localhost ~]# tr 'a-z' 'A-Z' </etc/passwd
ROOT:X:0:0:ROOT:/ROOT:/BIN/BASH
BIN:X:1:1:BIN:/BIN:/SBIN/NOLOGIN
DAEMON:X:2:2:DAEMON:/SBIN:/SBIN/NOLOGIN
ADM:X:3:4:ADM:/VAR/ADM:/SBIN/NOLOGIN
LP:X:4:7:LP:/VAR/SPOOL/LPD:/SBIN/NOLOGIN
SYNC:X:5:0:SYNC:/SBIN:/BIN/SYNC
SHUTDOWN:X:6:0:SHUTDOWN:/SBIN:/SBIN/SHUTDOWN
HALT:X:7:0:HALT:/SBIN:/SBIN/HALT
MAIL:X:8:12:MAIL:/VAR/SPOOL/MAIL:/SBIN/NOLOGIN
UUCP:X:10:14:UUCP:/VAR/SPOOL/UUCP:/SBIN/NOLOGIN
OPERATOR:X:11:0:OPERATOR:/ROOT:/SBIN/NOLOGIN
GAMES:X:12:100:GAMES:/USR/GAMES:/SBIN/NOLOGIN
GOPHER:X:13:30:GOPHER:/VAR/GOPHER:/SBIN/NOLOGIN
FTP:X:14:50:FTP USER:/VAR/FTP:/SBIN/NOLOGIN
NOBODY:X:99:99:NOBODY:/:/SBIN/NOLOGIN
DBUS:X:81:81:SYSTEM MESSAGE BUS:/:/SBIN/NOLOGIN
USBMUXD:X:113:113:USBMUXD USER:/:/SBIN/NOLOGIN
VCSA:X:69:69:VIRTUAL CONSOLE MEMORY OWNER:/DEV:/SBIN/NOLOGIN
RTKIT:X:499:497:REALTIMEKIT:/PROC:/SBIN/NOLOGIN
AVAHI-AUTOIPD:X:170:170:AVAHI IPV4LL STACK:/VAR/LIB/AVAHI-AUTOIPD:/SBIN/NOLOGIN
ABRT:X:173:173::/ETC/ABRT:/SBIN/NOLOGIN
HALDAEMON:X:68:68:HAL DAEMON:/:/SBIN/NOLOGIN
GDM:X:42:42::/VAR/LIB/GDM:/SBIN/NOLOGIN
<<:在当前目录下产生文档,如
[root@localhost ~]# cat >> 1.txt << end
> 马强在北京,王鹏健是高级JAVA工程师
> 乔四是高级硬件工程师
> end
[root@localhost ~]# cat 1.txt
马强在北京,王鹏健是高级JAVA工程师
乔四是高级硬件工程师
‘|’ 管道符号,可以将前面命令输出的结果作为后面命令的输入
命令1|命令2|命令3|
如:显示出/eyc/passwd 文件中的第一位
cat /etc/passwd |cut -d: -f1
root
bin
daemon
adm
lp
sync
shutdown
halt
uucp
operator
games
gopher
ftp
nobody
dbus
usbmuxd
vcsa
rtkit
avahi-autoipd
abrt
haldaemon
并将返回的结果按照字母表顺序进行排序
[root@localhost ~]# cat /etc/passwd |cut -d: -f1| sort -n
abrt
adm
apache
avahi-autoipd
bin
daemon
dbus
ftp
games
gdm
gopher
haldaemon
halt
lp
mailnull
mysql
nobody
ntp
operator
postfix
pulse
root
rtkit
saslauth
shutdown
smmsp
sshd
sync
tcpdump
usbmuxd
uucp
vcsa
www
再把输出结果以大写字母方式显示:
[root@localhost ~]# cat /etc/passwd |cut -d: -f1| sort -n| tr 'a-z' 'A-Z'
ABRT
ADM
APACHE
AVAHI-AUTOIPD
BIN
DAEMON
DBUS
FTP
GAMES
GDM
GOPHER
HALDAEMON
HALT
LP
MAILNULL
MYSQL
NOBODY
NTP
OPERATOR
POSTFIX
PULSE
ROOT
RTKIT
SASLAUTH
SHUTDOWN
SMMSP
SSHD
SYNC
TCPDUMP
USBMUXD
UUCP
VCSA
WWW
[root@localhost ~]#
获取/etc/passwd 文件中的第10行
[root@localhost ~]# head -10 /etc/passwd |tail -1
uucp:x:10:14:uucp:/var/spool/uucp:/sbin/nologin
获取/etc/passwd 文件中的倒数第8行,
21 abrt:x:173:173::/etc/abrt:/sbin/nologin
22 haldaemon:x:68:68:HAL daemon:/:/sbin/nologin
23 gdm:x:42:42::/var/lib/gdm:/sbin/nologin
24 ntp:x:38:38::/etc/ntp:/sbin/nologin
25 apache:x:48:48:Apache:/var/www:/sbin/nologin
26 saslauth:x:498:76:Saslauthd user:/var/empty/saslauth:/sbin/nologin
27 postfix:x:89:89::/var/spool/postfix:/sbin/nologin
28 pulse:x:497:496:PulseAudio System Daemon:/var/run/pulse:/sbin/nologin
29 sshd:x:74:74:Privilege-separated SSH:/var/empty/sshd:/sbin/nologin
30 tcpdump:x:72:72::/:/sbin/nologin
31 mysql:x:500:500:mysq:/home/mysql:/bin/bash
32 www:x:501:501::/home/www:/bin/false
33 mailnull:x:47:47::/var/spool/mqueue:/sbin/nologin
34 smmsp:x:51:51::/var/spool/mqueue:/sbin/nologin
[root@localhost ~]# tail -8 /etc/passwd |head -1
postfix:x:89:89::/var/spool/postfix:/sbin/nologin
[root@localhost ~]#
linux ‘|’ 与重定向 实例详解的更多相关文章
- Linux的Cgroup<实例详解>
为什么要有cgroup Linux系统中经常有个需求就是希望能限制某个或者某些进程的分配资源.也就是能完成一组容器的概念,在这个容器中,有分配好的特定比例的cpu时间,IO时间,可用内存大小等.于是就 ...
- Linux sed命令实例详解
简介 sed 是一种在线编辑器,它一次处理一行内容.处理时,把当前处理的行存储在临时缓冲区中,称为“模式空间”(pattern space),接着用sed命令处理缓冲区中的内容,处理完成后,把缓冲区的 ...
- linux基础-磁盘阵列(RAID)实例详解
磁盘阵列(RAID)实例详解 raid技术分类 软raid技术 硬raid技术 Raid和lvm的区别 为什么选择用raid RAID详解 RAID-0 RAID-1 RAID-5 Raid-10 R ...
- Linux下rz命令使用的实例详解
Linux中rz命令和sz命令都可用于文件传输,而rz命令主要用于文件的上传,下面将通过几个实例来给大家详细介绍下Linux下rz命令的用法,一起来学习下吧. rz命令可以批量上传文件,当然也可上传单 ...
- Linux计划任务Crontab实例详解教程
说明:Crontab是Linux系统中在固定时间执行某一个程序的工具,类似于Windows系统中的任务计划程序 下面通过详细实例来说明在Linux系统中如何使用Crontab 操作系统:CentOS ...
- Linux备份数据库,mysqldump命令实例详解
mysqldump是mysql数据库中备份工具,用于将MYSQL服务器中的数据库以标准的sql语言的方式导出,并保存到文件中. 语法: mysqldump (选项) 选项: --add-drop-ta ...
- 【转帖】Linux定时任务Crontab命令详解
Linux定时任务Crontab命令详解 https://www.cnblogs.com/intval/p/5763929.html 知道有crontab 以及 at 命令 改天仔细学习一下 讲sys ...
- [转帖]Linux:cut命令详解
Linux:cut命令详解 https://www.cnblogs.com/Spiro-K/p/6361646.html cut -f cut -f -d cut -c1- 这三个命令好像最常见, 记 ...
- Linux定时任务Crontab命令详解_转
转自:Linux定时任务Crontab命令详解 (部分修改) linux 定时系统则是由 cron (crond) 这个系统服务来控制的.Linux 系统上面原本就有非常多的计划性工作,因此这个系统服 ...
随机推荐
- imx6 usb otg config 配置
imx6 usb的host和slave配置,配置之后,安装gadget模块,就能够在host和slave之间切换. 参考文档: i.MX 6Dual/6Quad Linux Reference Man ...
- 分享 rabbitMQ入门详解
原文地址http://blog.csdn.net/cugb1004101218/article/details/21243927 目录(?)[-] rabbitMQ说明文档 rabbitMQ是什么 消 ...
- jira任务批量操作示例
1. 获取jira任务编号 使用字段提取工具获取编号,如WQBNEWSDLDL-347,WQBNEWSDLDL-348: 字段提取正则表达式:(?<2>[\[[](?<1>[A ...
- iOS获取当前AppStore版本号与更新
- (void)checkUpdateWithAppID:(NSString *)appID success:(void (^)(NSDictionary *resultDic , BOOL isNe ...
- ADSL自动更换IP地址源代码
有些网站限制IP地址,什么一个IP地址只能一次之类的.特别是投票网址,为了防止刷票,限制1个IP只允许投票一次! 此程序采用Vs2010+C#开发,提供全部源代码!方便程序猿朋友二次开发! 可以后台运 ...
- java.util.ConcurrentModificationException --map
key:3-key key:/v1.02-key Exception in thread "main" java.util.ConcurrentModificationExcept ...
- SQL Server中Rowcount与@@Rowcount的用法 和set nocount on 也会更新@@Rowcount
rowcount的用法: rowcount的作用就是用来限定后面的sql在返回指定的行数之后便停止处理,比如下面的示例, set rowcount 10select * from 表A 这样的查询只会 ...
- 新建一个angularjs+requirejs+bootstrap+typescript+gulp+vscode+git的项目
环境 windows 10 准备工具 Visual Studio Code Node.js Git 需求 必须支持IE8 步骤开始: 执行命令行工具 mkdir Demo && cd ...
- (转)SVN服务器搭建和使用(三)
接下来,试试用TortoiseSVN修改文件,添加文件,删除文件,以及如何解决冲突等. 添加文件 在检出的工作副本中添加一个Readme.txt文本文件,这时候这个文本文件会显示为没有版本控制的状态, ...
- MySQL数据库中tinyint类型字段读取数据为true和false
今天遇到这么一个问题,公司最近在做一个活动,然后数据库需要建表,其中有个字段是关于奖励发放的状态的字段,结果读取出来的值为true 一.解决读取数据为true/false的问题 场景: 字段:stat ...