ÿØÿà JFIF ÿÛ „ ( %!1!%)+//.383,7(-.+
-%%-////---/-.+/--+------/------/--0+--/-/-----.-----ÿÀ ¥2" ÿÄ ÿÄ J ! 1AQ"aq2‘#BR‚¡ÁÑ3br’¢±Âð$CSƒ²á4c“%DsÓñÿÄ ÿÄ * !1AQa‘"2q3±ð#b¡ÿÚ ? ¼QxJQaÍuò¸Zö Úü8,ÐÚú
"SSn<rçù–´âE—^ªBÖ9À\†¸ÔÁTÃÛ5
ëd´³Í#Ý;Þ38œî ¶H£M:wÎ3…³…âpÔF&‚FK¸9„â4àGEõªfÿ ‘ñ(ßwpŽF|È¥ù®häðÍѶ¹‘[ÒinÙW¶ùñY˜Q{›K"išÒ[Ú8žë\F¹@-?v"ÔU”,ìöžkÿ {I‡£šÍ?e
ríV
?>
.........................................
.............................................................................
ÿØÿà JFIF ÿÛ „
(
%!1!%)+//.383,7(-.+
-%%-////---/-.+/--+------/------/--0+--/-/-----.-----ÿÀ ¥2" ÿÄ
ÿÄ J ! 1AQ"aq2‘#BR‚¡ÁÑ3br’¢±Âð$CSƒ²á4c“%DsÓñÿÄ
ÿÄ * !1AQa‘"2q3±ð#b¡ÿÚ
? ¼QxJQaÍuò¸Zö
Úü8,ÐÚú
"SSn<rçù–´âE—^ªBÖ9À\†¸ÔÁTÃÛ5
ëd´³Í#Ý;Þ38œî ¶H£M:wÎ3…³…âpÔF&‚FK¸9„â4àGEõªfÿ ‘ñ(ßwpŽF|È¥ù®häðÍѶ¹‘[ÒinÙW¶ùñY˜Q{›K"išÒ[Ú8žë\F¹@-?v"ÔU”,ìöžkÿ {I‡£šÍ?e
ríV
?>
.........................................
.............................................................................
????????????????????????????????????
????????????????????????????????????
ÿØÿà JFIF ÿÛ „ ( %!1!%)+//.383,7(-.+
-%%-////---/-.+/--+------/------/--0+--/-/-----.-----ÿÀ ¥2" ÿÄ ÿÄ J ! 1AQ"aq2‘#BR‚¡ÁÑ3br’¢±Âð$CSƒ²á4c“%DsÓñÿÄ ÿÄ * !1AQa‘"2q3±ð#b¡ÿÚ ? ¼QxJQaÍuò¸Zö Úü8,ÐÚú
"SSn<rçù–´âE—^ªBÖ9À\†¸ÔÁTÃÛ5
ëd´³Í#Ý;Þ38œî ¶H£M:wÎ3…³…âpÔF&‚FK¸9„â4àGEõªfÿ ‘ñ(ßwpŽF|È¥ù®häðÍѶ¹‘[ÒinÙW¶ùñY˜Q{›K"išÒ[Ú8žë\F¹@-?v"ÔU”,ìöžkÿ {I‡£šÍ?e
ríV
?>
.........................................
.............................................................................
ÿØÿà JFIF ÿÛ „
(
%!1!%)+//.383,7(-.+
-%%-////---/-.+/--+------/------/--0+--/-/-----.-----ÿÀ ¥2" ÿÄ
ÿÄ J ! 1AQ"aq2‘#BR‚¡ÁÑ3br’¢±Âð$CSƒ²á4c“%DsÓñÿÄ
ÿÄ * !1AQa‘"2q3±ð#b¡ÿÚ
? ¼QxJQaÍuò¸Zö
Úü8,ÐÚú
"SSn<rçù–´âE—^ªBÖ9À\†¸ÔÁTÃÛ5
ëd´³Í#Ý;Þ38œî ¶H£M:wÎ3…³…âpÔF&‚FK¸9„â4àGEõªfÿ ‘ñ(ßwpŽF|È¥ù®häðÍѶ¹‘[ÒinÙW¶ùñY˜Q{›K"išÒ[Ú8žë\F¹@-?v"ÔU”,ìöžkÿ {I‡£šÍ?e
ríV
?>
.........................................
.............................................................................
????????????????????????????????????
????????????????????????????????????
U:RDoc::AnyMethod[iI"system:ETI"Kernel#system;TF:publico:RDoc::Markup::Document:@parts[Do:RDoc::Markup::Paragraph; [I"?Creates a new child process by doing one of the following ;TI"in that process:;To:RDoc::Markup::BlankLine o:RDoc::Markup::List:
@type:BULLET:@items[o:RDoc::Markup::ListItem:@label0; [o;
; [I"0Passing string +command_line+ to the shell.;To;;0; [o;
; [I"+Invoking the executable at +exe_path+.;T@o;
; [I"XThis method has potential security vulnerabilities if called with untrusted input; ;TI">see {Command Injection}[rdoc-ref:command_injection.rdoc].;T@o;
; [I"
Returns:;T@o;;
;;[o;;0; [o;
; [I"2+true+ if the command exits with status zero.;To;;0; [o;
; [I"6+false+ if the exit status is a non-zero integer.;To;;0; [o;
; [I",+nil+ if the command could not execute.;T@o;
; [I"ARaises an exception (instead of returning +false+ or +nil+) ;TI"6if keyword argument +exception+ is set to +true+.;T@o;
; [I"7Assigns the command's error status to $?.;T@o;
; [ I"*The new process is created using the ;TI"o{system system call}[https://pubs.opengroup.org/onlinepubs/9699919799.2018edition/functions/system.html]; ;TI"Eit may inherit some of its environment from the calling program ;TI"0(possibly including open file descriptors).;T@o;
; [I"QArgument +env+, if given, is a hash that affects +ENV+ for the new process; ;TI"Isee {Execution Environment}[rdoc-ref:Process@Execution+Environment].;T@o;
; [I"BArgument +options+ is a hash of options for the new process; ;TI"Asee {Execution Options}[rdoc-ref:Process@Execution+Options].;T@o;
; [I"9The first required argument is one of the following:;T@o;;
;;[o;;0; [o;
; [I"'+command_line+ if it is a string, ;TI"Fand if it begins with a shell reserved word or special built-in, ;TI"3or if it contains one or more meta characters.;To;;0; [o;
; [I"+exe_path+ otherwise.;T@o;
; [I"#Argument +command_line+;T@o;
; [I"P\String argument +command_line+ is a command line to be passed to a shell; ;TI"Nit must begin with a shell reserved word, begin with a special built-in, ;TI" or contain meta characters:;T@o:RDoc::Markup::Verbatim; [
I"Wsystem('if true; then echo "Foo"; fi') # => true # Shell reserved word.
;TI"Lsystem('exit') # => true # Built-in.
;TI"[system('date > /tmp/date.tmp') # => true # Contains meta character.
;TI"@system('date > /nop/date.tmp') # => false
;TI"Lsystem('date > /nop/date.tmp', exception: true) # Raises RuntimeError.
;T:@format0o;
; [I"7Assigns the command's error status to $?:;T@o;; [ I"Gsystem('exit') # => true # Built-in.
;TI"[$? # => #
;TI";system('date > /nop/date.tmp') # => false
;TI"[$? # => #
;T;0o;
; [I"MThe command line may also contain arguments and options for the command:;T@o;; [I"$system('echo "Foo"') # => true
;T;0o;
; [I"Output:;T@o;; [I" Foo
;T;0o;
; [I"YSee {Execution Shell}[rdoc-ref:Process@Execution+Shell] for details about the shell.;T@o;
; [I">Raises an exception if the new process could not execute.;T@o;
; [I"Argument +exe_path+;T@o;
; [I"1Argument +exe_path+ is one of the following:;T@o;;
;;[o;;0; [o;
; [I"3The string path to an executable to be called.;To;;0; [o;
; [I" true # Path to date on Unix-style system.
;TI"9system('foo') # => nil # Command failed.
;T;0o;
; [I"Output:;T@o;; [I"%Mon Aug 28 11:43:10 AM CDT 2023
;T;0o;
; [I"7Assigns the command's error status to $?:;T@o;; [ I"'system('/usr/bin/date') # => true
;TI"H$? # => #
;TI"&system('foo') # => nil
;TI"J$? # => #
;T;0o;
; [I"+Ruby invokes the executable directly. ;TI"'This form does not use the shell; ;TI"Gsee {Arguments args}[rdoc-ref:Process@Arguments+args] for caveats.;T@o;; [I"%system('doesnt_exist') # => nil
;T;0o;
; [I"CIf one or more +args+ is given, each is an argument or option ;TI"$to be passed to the executable:;T@o;; [I"0system('echo', 'C*') # => true
;TI"0system('echo', 'hello', 'world') # => true
;T;0o;
; [I"Output:;T@o;; [I"C*
;TI"hello world
;T;0o;
; [I">Raises an exception if the new process could not execute.;T:
@fileI"process.c;T:0@omit_headings_from_table_of_contents_below0I"system([env, ] command_line, options = {}, exception: false) -> true, false, or nil
system([env, ] exe_path, *args, options = {}, exception: false) -> true, false, or nil
;T0[ I"(*args);T@FI"Kernel;TcRDoc::NormalModule00