U:RDoc::AnyMethod[iI" capture3:EFI"Open3#capture3;TF: privateo:RDoc::Markup::Document: @parts[o:RDoc::Markup::Paragraph; [I"UOpen3.capture3 captures the standard output and the standard error of a command.;To:RDoc::Markup::BlankLineo:RDoc::Markup::Verbatim; [I"Mstdout_str, stderr_str, status = Open3.capture3([env,] cmd... [, opts]) ;T: @format0o; ; [I"GThe arguments env, cmd and opts are passed to Open3.popen3 except ;TI"Xopts[:stdin_data] and opts[:binmode]. See Process.spawn.;T@o; ; [I"`If opts[:stdin_data] is specified, it is sent to the command's standard input.;T@o; ; [I"SIf opts[:binmode] is true, internal pipes are set to binary mode.;T@o; ; [I"Examples:;T@o; ; [I"%# dot is a command of graphviz. ;TI"graph = <<'End' ;TI" digraph g { ;TI" a -> b ;TI" } ;TI" End ;TI"Idrawn_graph, dot_log = Open3.capture3("dot -v", :stdin_data=>graph) ;TI" ;TI"To, e, s = Open3.capture3("echo abc; sort >&2", :stdin_data=>"foo\nbar\nbaz\n") ;TI"p o #=> "abc\n" ;TI"p e #=> "bar\nbaz\nfoo\n" ;TI"2p s #=> # ;TI" ;TI"L# generate a thumbnail image using the convert command of ImageMagick. ;TI"9# However, if the image is really stored in a file, ;TI"S# system("convert", "-thumbnail", "80", "png:#{filename}", "png:-") is better ;TI".# because of reduced memory consumption. ;TI"^# But if the image is stored in a DB or generated by the gnuplot Open3.capture2 example, ;TI",# Open3.capture3 should be considered. ;TI"# ;TI"gimage = File.read("/usr/share/openclipart/png/animals/mammals/sheep-md-v0.1.png", :binmode=>true) ;TI"qthumbnail, err, s = Open3.capture3("convert -thumbnail 80 png:- png:-", :stdin_data=>image, :binmode=>true) ;TI"if s.success? ;TI"' STDOUT.binmode; print thumbnail ;TI"end;T; 0: @fileI"lib/open3.rb;T:0@omit_headings_from_table_of_contents_below000[I"3(*cmd, stdin_data: '', binmode: false, **opts);T@:FI" Open3;FcRDoc::NormalModule00