linux paste命令


paste

回到顶部
paste就要比join 简单多了!相对于join 必须要比对两个文件的数据相关性, paste直接将两行贴在一起,且中间以tab键隔开!简单的使用方法:
[peter@study ~]$ paste [-d] file1 file2
选项与参数:
-d :后面可以接分隔字符。预设是以 [tab] 来分隔的!
- :如果 file 部分写成 - ,表示来自 standard input 的资料的意思。
用 root 身份,将 /etc/passwd 与 /etc/shadow 同一行贴在一起:
[root@initroot ~]# paste /etc/passwd /etc/shadow
root:x:0:0:root:/root:/bin/bash	root:$6$iWZdx1dL$UmMmRTYcPPYmIOLphHouLkfqbsy2k4uyLnekclB4LnBP9ksLDGCqZ5kTS/uxsl7D4umb1/.RrEJF/Xw0lDlDu/:18268:0:99999:7:::
daemon:x:1:1:daemon:/usr/sbin:/usr/sbin/nologin	daemon:*:17882:0:99999:7:::
bin:x:2:2:bin:/bin:/usr/sbin/nologin	bin:*:17882:0:99999:7:::
sys:x:3:3:sys:/dev:/usr/sbin/nologin	sys:*:17882:0:99999:7:::
sync:x:4:65534:sync:/bin:/bin/sync	sync:*:17882:0:99999:7:::
...省略...
注意同一行中间以tab键隔开!
先将 /etc/group 读出(用 cat),然后与范例一贴上一起!且仅取出前三行
[root@initroot ~]# cat /etc/group | paste /etc/passwd /etc/shadow - | head -n 3
root:x:0:0:root:/root:/bin/bash	root:$6$iWZdx1dL$UmMmRTYcPPYmIOLphHouLkfqbsy2k4uyLnekclB4LnBP9ksLDGCqZ5kTS/uxsl7D4umb1/.RrEJF/Xw0lDlDu/:18268:0:99999:7:::	root:x:0:peter
daemon:x:1:1:daemon:/usr/sbin:/usr/sbin/nologin	daemon:*:17882:0:99999:7:::	daemon:x:1:
bin:x:2:2:bin:/bin:/usr/sbin/nologin	bin:*:17882:0:99999:7:::	bin:x:2:
重点在那个 - 的使用!那玩意儿常常代表 stdin 喔!

本文由initroot编辑整理,转载请注明www.initroot.com

100次点赞 100次阅读