Server IP : 66.29.132.122 / Your IP : 3.145.173.112 Web Server : LiteSpeed System : Linux business142.web-hosting.com 4.18.0-553.lve.el8.x86_64 #1 SMP Mon May 27 15:27:34 UTC 2024 x86_64 User : admazpex ( 531) PHP Version : 7.2.34 Disable Function : NONE MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : ON | Sudo : OFF | Pkexec : OFF Directory : /proc/self/root/proc/self/root/proc/thread-self/root/proc/thread-self/root/opt/alt/ruby18/share/ri/1.8/system/IO/ |
Upload File : |
--- !ruby/object:RI::MethodDescription aliases: [] block_params: comment: - !ruby/struct:SM::Flow::P body: Runs the specified command string as a subprocess; the subprocess's standard input and output will be connected to the returned <tt>IO</tt> object. If <em>cmd_string</em> starts with a ``<tt>-</tt>'', then a new instance of Ruby is started as the subprocess. The default mode for the new file object is ``r'', but <em>mode</em> may be set to any of the modes listed in the description for class IO. - !ruby/struct:SM::Flow::P body: If a block is given, Ruby will run the command as a child connected to Ruby with a pipe. Ruby's end of the pipe will be passed as a parameter to the block. At the end of block, Ruby close the pipe and sets <tt>$?</tt>. In this case <tt>IO::popen</tt> returns the value of the block. - !ruby/struct:SM::Flow::P body: "If a block is given with a <em>cmd_string</em> of ``<tt>-</tt>'', the block will be run in two separate processes: once in the parent, and once in a child. The parent process will be passed the pipe object as a parameter to the block, the child version of the block will be passed <tt>nil</tt>, and the child's standard in and standard out will be connected to the parent through the pipe. Not available on all platforms." - !ruby/struct:SM::Flow::VERB body: " f = IO.popen("uname")\n p f.readlines\n puts "Parent is #{Process.pid}"\n IO.popen ("date") { |f| puts f.gets }\n IO.popen("-") {|f| $stderr.puts "#{Process.pid} is here, f is #{f}"}\n p $?\n" - !ruby/struct:SM::Flow::P body: <em>produces:</em> - !ruby/struct:SM::Flow::VERB body: " ["Linux\\n"]\n Parent is 26166\n Wed Apr 9 08:53:52 CDT 2003\n 26169 is here, f is\n 26166 is here, f is #<IO:0x401b3d44>\n #<Process::Status: pid=26166,exited(0)>\n" full_name: IO::popen is_singleton: true name: popen params: | IO.popen(cmd_string, mode="r" ) => io IO.popen(cmd_string, mode="r" ) {|io| block } => obj visibility: public