From: Tom Cloyd Date: 2009-07-16T10:11:05+09:00 Subject: problem executing bash script from ruby I have little experience with this sort of thing, but it looked fairly straightforward. I'm in trouble, however. Details: From /home/tomc/Ruby-work/setnet/bin/ I launch "./setnet". This dir contains: mkrdoc.sh setnet "./setnet" contains these lines (among others), and works fine: manager = SN::DBManager.new() manager.startup The "SN.rb" module is in "/home/tomc/Ruby-work/setnet/lib/setnet", and contains a method with this code snippet - puts "\n=== generating new rdocs for SetNet ===" system("ls") # to verify where I am in the filesystem system("./mkrdoc.sh") if $? != 0 puts "*** command failed: status = #{$?.exitstatus}" end This snippet executes by means of selection from a menu, with this result - === generating new rdocs for SetNet === mkrdoc.sh setnet *** command failed: status = 127 mkrdoc.sh contains: cd ../lib/setnet echo "dir--" ls echo "rdoc executing --" rdoc -N -x ./doc What I'm trying to do is acquire the functionality of generating new rdocs for my program without having to manually go back to a command line. Every attempt I made to make a single "system()" call from within ruby, to generate the rdocs, have failed. In my experience, rdoc is excessively quirky. I've spent most of today trying to get it to do some simple things, and failing, even though I've very carefully following the documentation. I do have something that works - that "rdoc -N -s ./doc" command, but only when it's executed from within the right dir. Since - * I'm allowed one command per "system()" call, and * upon return from that call, the present working dir is reset to its prior state... my only option appears to be to issue the commands I'd use in a manual interaction with the CLI from within a script file, and that's what I'm trying to do. My questions: 1. Is there some obvious reason by my attempt to execute mkrdoc.sh is failing? 2. How can I make use of the process status output I've captured? I've searched Pickax 3rd ed., and with Google, and I'm not receiving much enlightenment. What do the "big boys/girls" do with this status output? Thanks very much for any help anyone can offer. Tom -- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Tom Cloyd, MS MA, LMHC - Private practice Psychotherapist Bellingham, Washington, U.S.A: (360) 920-1226 << tc@tomcloyd.com >> (email) << TomCloyd.com >> (website) << sleightmind.wordpress.com >> (mental health weblog) ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~