From 2b1d7f881c19c4d4b5afae194e02d3300c7675d0 Mon Sep 17 00:00:00 2001
From: Patrick Simianer
Date: Tue, 5 Jul 2016 11:01:46 +0200
Subject: mv
---
split-pipes | 51 +++++++++++++++++++++++++++++++++++++++++++++++++++
1 file changed, 51 insertions(+)
create mode 100755 split-pipes
(limited to 'split-pipes')
diff --git a/split-pipes b/split-pipes
new file mode 100755
index 0000000..ce8f018
--- /dev/null
+++ b/split-pipes
@@ -0,0 +1,51 @@
+#!/usr/bin/env ruby
+
+require 'trollop'
+
+STDIN.set_encoding 'utf-8'
+STDOUT.set_encoding 'utf-8'
+
+conf = Trollop::options do
+ banner "splitpipes -f < "
+ opt :field, "field", :type => :int, :required => true
+ opt :to, "to", :type => :int, :default => nil
+end
+
+
+a = []
+range = false
+if conf[:to]
+ range = true
+end
+
+if range
+ if conf[:field] >= conf[:to]
+ STDERR.write "field >= to, exiting\n"
+ exit
+ end
+end
+
+if conf[:field]<=0 || (range && conf[:to]<=0)
+ STDERR.write "field or to <= 0, exiting"
+ exit
+end
+
+while line = STDIN.gets
+ j = 1
+ line.strip.split(' ||| ').each { |i|
+ if range && (conf[:field]..conf[:to]).include?(j)
+ a << i.strip
+ elsif j == conf[:field]
+ puts i.strip
+ break
+ end
+ j += 1
+ }
+ if range
+ puts "#{a.join " ||| "}\n"
+ end
+ a.clear
+end
+
+
+
--
cgit v1.2.3