您的位置:首页 > 运维架构 > Linux

paste:linux合并两个文件中的列(左右合并)

2012-08-14 13:14 281 查看
[root@www ~]# paste [-d] file1 file2

选项与参数:

-d :后面可以接分隔字符。默认是以 [tab] 来分隔的!

- :如果 file 部分写成 - ,表示来自 standard input 的数据的意思。

范例一:将 /etc/passwd 与 /etc/shadow 同一行贴在一起

[root@www ~]# paste /etc/passwd /etc/shadow

bin:x:1:1:bin:/bin:/sbin/nologin bin:*:14126:0:99999:7:::

daemon:x:2:2:daemon:/sbin:/sbin/nologin daemon:*:14126:0:99999:7:::

adm:x:3:4:adm:/var/adm:/sbin/nologin adm:*:14126:0:99999:7:::

# 注意喔!同一行中间是以 [tab] 按键隔开的!

范例二:先将 /etc/group 读出(用 cat),然后与范例一贴上一起!且仅取出前三行

[root@www ~]# cat /etc/group|paste /etc/passwd /etc/shadow -|head -n 3

# 这个例子的重点在那个 - 的使用!那玩意儿常常代表 stdin 喔!

例:使用chpasswd批量修改用户密码

[root@localhost ~]# cat name

user1:

user2:

user3:

user4:

user5:

user6:

user7:

user8:

user9:

[root@localhost ~]# cat passwd

978ebbf1763

23c2626c37b

15dff03fa71

2459043b3ad

d317ec4870c

1728b6b5ddc

ed9d98f8b4c

0a7f3f5f8c4

96935ad635c

[root@localhost ~]# paste name passwd

user1: 978ebbf1763

user2: 23c2626c37b

user3: 15dff03fa71

user4: 2459043b3ad

user5: d317ec4870c

user6: 1728b6b5ddc

user7: ed9d98f8b4c

user8: 0a7f3f5f8c4

user9: 96935ad635c

[root@localhost ~]# paste -d"#" name passwd

user1:#978ebbf1763

user2:#23c2626c37b

user3:#15dff03fa71

user4:#2459043b3ad

user5:#d317ec4870c

user6:#1728b6b5ddc

user7:#ed9d98f8b4c

user8:#0a7f3f5f8c4

user9:#96935ad635c

注:-d指定分隔符,不加此参数默认为制表符。
本文出自 “notepad” 博客,请务必保留此出处http://sndapk.blog.51cto.com/5385144/963131
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: