mirror of
				https://github.com/ruby/ruby.git
				synced 2022-11-09 12:17:21 -05:00 
			
		
		
		
	git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@598 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
		
			
				
	
	
		
			44 lines
		
	
	
	
		
			755 B
		
	
	
	
		
			Ruby
		
	
	
	
	
	
			
		
		
	
	
			44 lines
		
	
	
	
		
			755 B
		
	
	
	
		
			Ruby
		
	
	
	
	
	
#! ./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
 |