题外话
虽然自己经常上cnbeta看新闻刷评论,也在hacknews看帖子,还上reddit看好文长见识,偶尔也逛逛stackoverflow.但一直觉得没什么提高,就跟看体育新闻八卦新闻似的,过了也就
过了。问题症结在哪里?看了这篇博文给了我些许启发,就像是给我打了兴奋剂,重新燃起
我日刷一博的雄心。但我现在已经淡定了很多,日刷一博,一夜七次也只能是想想而已,拖
延症是要长期艰苦卓绝的斗争才有可能取得胜利的。所以我要求放低一点,以后看到好文
(难易不定,不过水平有限,基本上该都不难),尝试着翻译翻译,也算是不白费了浏览的
时间。
10个paste命令的例子
来源:原文地址在这篇文章中,我们将在一些例子中看看怎么使用paste。按照man里的定义,paste命令是
用来 *合并文件行* 的。它对合并单文件的行和合并多个文件的行都是非常有用的。这篇文章
分为两个部分:
1. 单文件处理中的paste命令例子
2. 多文件处理中的paste命令例子
让我们先看看例子要处理的文件file1的内容:
$ cat file1 Linux Unix Solaris HPUX AIX
单文件paste命令
1. paste命令不带任何参数操作单文件时,与cat命令相同
$ paste file1 Linux Unix Solaris HPUX AIX2. 连接文件中的所有行
$ paste -s file1 Linux Unix Solaris HPUX AIX-s 选项连接文件中的所有行。因为没有指定分隔符,默认使用tab来分隔不同列。
3. 使用逗号分隔符连接所有行
$ paste -d, -s file1 Linux,Unix,Solaris,HPUX,AIX-d 选项用来指定分隔符。同时使用-d和-s,将文件中的所有行连接为一行。
4. 以两列的形式合并文件行
$ paste - - < file1 Linux Unix Solaris HPUX AIX“-”从标准输入中读入一行。两个“-”读两行,并且按照两列粘帖。 5. 使用冒号分隔符以两列合并文件行
$ paste -d':' - - < file1 Linux:Unix Solaris:HPUX AIX:这与每两行连接文件相同。 6. 以三列合并文件行
$ paste - - - < file1 Linux Unix Solaris HPUX AIX7. 合并文件成三列,使用两个不同的分隔符
$ paste -d ':,' - - - < file1 Linux:Unix,Solaris HPUX:AIX,-d 选项可以接受多个分隔符。第1列和第2列用“:”分隔,第2列和第3列用','分隔。
多文件paste命令
我们先看看file2的内容:$ cat file2 Suse Fedora CentOS OEL Ubuntu1. 以并排的方式粘帖两个文件
$ paste file1 file2 Linux Suse Unix Fedora Solaris CentOS HPUX OEL AIX Ubuntupaste命令这里被用来以并排的方式合并多个文件。就像上面例子显示的那样,文件是以 并排的方式显示的。 2. 并排粘帖两个文件,使用逗号分隔符
$ paste -d, file1 file2 Linux,Suse Unix,Fedora Solaris,CentOS HPUX,OEL AIX,Ubuntu3. paste命令也可以在多文件处理中使用标准输入
$ cat file2 | paste -d, file1 - Linux,Suse Unix,Fedora Solaris,CentOS HPUX,OEL AIX,Ubuntu下面也一样:
$cat file1 | paste -d, - file2 Linux,Suse Unix,Fedora Solaris,CentOS HPUX,OEL AIX,Ubuntu再来一个(译注:注意与上面两个例子是不同的):
$ cat file1 file2 | paste -d, - - Linux,Unix Solaris,HPUX AIX,Suse Fedora,CentOS OEL,Ubuntu4. 从两个文件中交替读一行
$paste -d'\n' file1 file2 Linux Suse Unix Fedora Solaris CentOS HPUX OEL AIX Ubuntu使用换行符作为分隔符,我们能交替地从两个文件中读取行。
没有评论:
发表评论