Package DE_EPAGES::Core::API::SystemCommand
This Module starts an external process.
@EXPORT_OK |
Functions
PackTar
Pack $aFiles (files/dirs/globs) from $Directory into $Package (.tar/.tar.gz/.tgz)
Syntax |
$aPackedFiles = PackTar($Package, $Directory, $aFiles, $hFlags); |
Example |
PackTar($Package); # pack '*' (in cwd()) into $Package PackTar($Package, $Directory); # chdir $Directory and pack '*' into $Package PackTar($Package, undef, ['a*']); # pack files starting with 'a' into $Package |
Input |
|
Return |
|
RunCommandsInDir
Execute files ending in *.sh, *.cmd or *.bat in $Dir with $Args
Syntax |
$Status = RunCommandsInDir($Dir, $Args, $Output) |
Input |
|
Return |
|
SystemCommand
Executes a system command and throws an error if the command does not terminate with exit code 0. Possible error codes are:
- CommandError - command did not start
- CommandTerminated - command was terminated by signal
- CommandFailed - command did not start finish with exit code 0
Syntax |
SystemCommand( $CommandLine, $hOptions ); SystemCommand( $aCommandLine, $hOptions ); $Output = SystemCommand( $CommandLine, $hOptions ); |
Example |
SystemCommand( ['java', '-version'], { 'Print' => 1 }); $Output = SystemCommand( "perl -v", { 'Capture' => 1 }); |
Input |
|
Return |
|
UnpackTar
Unpack $Package (.tar/.tar.gz/.tgz) into $Directory (default: cwd()).
Syntax |
$aPackedFiles = UnpackTar($Package, $Directory, $hFlags); |
Example |
$aPackedFiles = UnpackTar($Package); # unpack into cwd() SetAccessRights($_) foreach @$aPackedFiles; # and set access rights # beware: if the package only contains files, missing dirs are created # automatically and access rights for this dirs must be set as well! $aPackedFiles = UnpackTar($Package, $Directory); # unpack into $Directory |
Input |
|
Return |
|