help
$ ruby extract-fields.rb -h
Usage: extract-fields [options]
-r, --report Report field configuration from very 1st line. (default: false)
-s, --split VALUE string value (default: "\t")
-j, --join VALUE string value (default: "\t")
-f, --fields one,two,three fields to extract (default: [])
Now explain with this sample.txt
each fields are separated with tab(\t
) char.
$ cat sample.txt
foo1 foo2 foo3
bar1 bar2 bar3
baz1 baz2 baz3
-r
is useful to check field number from very 1st line.
$ cat sample.txt | ruby extract-fields.rb -r
opts: {:report=>true, :split=>"\t", :join=>"\t", :fields=>[]}
args: []
1: foo1
2: foo2
3: foo3
Now lets' extract field 1 and 3.
$ cat sample.txt | ruby extract-fields.rb -f 1,3
foo1 foo3
bar1 bar3
baz1 baz3
This time, I extract 1 and 3, but custom order.
$ cat sample.txt | ruby extract-fields.rb -f 3,1
foo3 foo1
bar3 bar1
baz3 baz1
With -j
option, I can join fields with custom string, here I use --
.
$ cat sample.txt | ruby extract-fields.rb -f 3,1 -j '--'
foo3--foo1
bar3--bar1
baz3--baz1
$