>>>>> "A" == Arthur Korneyew <pustoi / spils.lv> writes: A> How can I check comand status in Ruby ? You have the class Process::Status uln% ri Process::Status ------------------------------------------------- Class: Process::Status +Process::Status+ encapsulates the information on the status of a running or terminated system process. The built-in variable +$?+ is either +nil+ or a +Process::Status+ object. fork { exit 99 } #=> 26557 Process.wait #=> 26557 $?.class #=> Process::Status $?.to_i #=> 25344 $? >> 8 #=> 99 $?.stopped? #=> false $?.exited? #=> true $?.exitstatus #=> 99 Posix systems record information on processes using a 16-bit integer. The lower bits record the process status (stopped, exited, signaled) and the upper bits possibly contain additional information (for example the program's return code in the case of exited processes). Pre Ruby 1.8, these bits were exposed directly to the Ruby program. Ruby now encapsulates these in a +Process::Status+ object. To maximize compatibility, however, these objects retain a bit-oriented interface. In the descriptions that follow, when we talk about the integer value of _stat_, we're referring to this 16 bit value. ------------------------------------------------------------------------ Instance methods: ----------------- &, ==, >>, coredump?, exited?, exitstatus, inspect, pid, signaled?, stopped?, stopsig, success?, termsig, to_i, to_int, to_s uln% Guy Decoux