Ruby system administration scripts

Mar 22
2008

OS users:

users = File.new("/etc/passwd").collect{|x| x.split(':')[0]}

Number of files in directory:

puts %x{ls}.split(/\n/).size
puts %x[ls|wc].split(/\s+/)[1]

Network interfaces:

inet = Hash.new{|h,k| h[k.split(/\s/)[0]] = k.scan(/addr:(\d+\.\d+\.\d+\.\d+)/)[0].to_s}
 
%x[ifconfig].to_s.split("\n\n").collect{|x| inet[x]}
 
# dump the structure: puts inet.inspect

to be continued….

Comments are closed.

Calendar

March 2008
M T W T F S S
« Feb   Apr »
 12
3456789
10111213141516
17181920212223
24252627282930
31  

Tags