Given a tab separated file:
给定制表符分隔文件:
$ cat foobar.tsv
foo bar
blah blah
black sheep
I could do two separate cut operations to get columns into separate files:
我可以做两个单独的剪切操作来将列放入单独的文件中:
$ cut -f1 foobar.tsv > foobar-c1.tsv
$ cut -f2 foobar.tsv > foobar-c2.tsv
$ cat foobar-c1.tsv
foo
blah
black
$ cat foobar-c2.tsv
bar
blah
sheep
Is it possible to just save columns into multiple files with just one cut operation? E.g.
是否可以只使用一次切割操作将列保存到多个文件中?例如。
cat foobar.tsv | cut -f1 -f2 > foobar-c1.tsv,foobar-c1.tsv
Note: The above command doesn't really work.
注意:上面的命令不起作用。
Also Note:
另请注意:
This don't count, -_-||| :
这不算,-_- ||| :
$ cut -f1 foobar.tsv > foobar-c1.tsv && cut -f2 foobar.tsv > foobar-c2.tsv
1 个解决方案
#1
2
You can achive this by using awk -
你可以用awk来实现这个目标 -
$ awk '{print $1 > "foobar-c1.csv"; print $2 > "foobar-c2.csv"}' foobar.csv
$ cat foobar-c1.csv
foo
blah
black
$ cat foobar-c2.csv
bar
blah
sheep
#1
2
You can achive this by using awk -
你可以用awk来实现这个目标 -
$ awk '{print $1 > "foobar-c1.csv"; print $2 > "foobar-c2.csv"}' foobar.csv
$ cat foobar-c1.csv
foo
blah
black
$ cat foobar-c2.csv
bar
blah
sheep