diff options
| author | Jari Vetoniemi <jari.vetoniemi@indooratlas.com> | 2020-03-16 18:49:26 +0900 | 
|---|---|---|
| committer | Jari Vetoniemi <jari.vetoniemi@indooratlas.com> | 2020-03-30 00:39:06 +0900 | 
| commit | fcbf63e62c627deae76c1b8cb8c0876c536ed811 (patch) | |
| tree | 64cb17de3f41a2b6fef2368028fbd00349946994 /jni/ruby/sample/mpart.rb | |
Fresh start
Diffstat (limited to 'jni/ruby/sample/mpart.rb')
| -rw-r--r-- | jni/ruby/sample/mpart.rb | 44 | 
1 files changed, 44 insertions, 0 deletions
| diff --git a/jni/ruby/sample/mpart.rb b/jni/ruby/sample/mpart.rb new file mode 100644 index 0000000..a88eba0 --- /dev/null +++ b/jni/ruby/sample/mpart.rb @@ -0,0 +1,44 @@ +#! ./ruby +# split into multi part +# usage: mpart.rb [-nnn] file.. + +lines = 1000 + +if (ARGV[0] =~ /^-(\d+)$/ ) +  lines = $1.to_i; +  ARGV.shift; +end + +basename = ARGV[0] +extname = "part" + +part = 1 +line = 0 + +fline = 0 +for i in ifp = open(basename) +  fline = fline + 1 +end +ifp.close + +parts = fline / lines + 1 + +for i in ifp = open(basename) +  if line == 0 +    ofp = open(sprintf("%s.%s%02d", basename, extname, part), "w") +    printf(ofp, "%s part%02d/%02d\n", basename, part, parts) +    ofp.write("BEGIN--cut here--cut here\n") +  end +  ofp.write(i) +  line = line + 1 +  if line >= lines and !ifp.eof? +    ofp.write("END--cut here--cut here\n") +    ofp.close +    part = part + 1 +    line = 0 +  end +end +ofp.write("END--cut here--cut here\n") +ofp.close + +ifp.close | 
