OverviewRun complex native scripts with a single command, similar to system commands.
The purpose of the scriptexec package is to enable quick and easy way to execute native scripts.
UsageSimply load the library and invoke the execute
library(scriptexec)
# execute script text
output <- scriptexec::execute("echo command1\necho command2")
expect_equal(output$status, 0)
expect_equal(grepl("command1", output$output), TRUE)
expect_equal(grepl("command2", output$output), TRUE)
if (.Platform$OS.type == "windows") {
ls_command <- "dir"
} else {
ls_command <- "ls"
}
output <- scriptexec::execute(c("echo user home:", ls_command))
expect_equal(output$status, 0)
# execute multiple commands as a script
output <- scriptexec::execute(c("cd", "echo test"))
expect_equal(output$status, 0)
# pass arguments (later defined as ARG1, ARG2, ...) and env vars
if (.Platform$OS.type == "windows") {
command <- "echo %ARG1% %ARG2% %MYENV%"
} else {
command <- "echo $ARG1 $ARG2 $MYENV"
}
output <- scriptexec::execute(command, args = c("TEST1", "TEST2"), env = c("MYENV=TEST3"))
expect_equal(output$status, 0)
expect_equal(grepl("TEST1 TEST2 TEST3", output$output), TRUE)
# non zero status code is returned in case of errors
expect_warning(output <- scriptexec::execute("exit 1"))
expect_equal(output$status, 1)
# do not wait for command to finish
output <- scriptexec::execute("echo my really long task", wait = FALSE)
expect_equal(output$status, -1)
Installation
Install from CRAN:
install.packages("scriptexec")
Install latest release from github:
devtools::install_github("sagiegurari/scriptexec@0.3.1")
Install current development version from github (might be unstable):
devtools::install_github("sagiegurari/scriptexec")
API Documentation
See full docs at: API Docs
Contributing Release HistorySee NEWS
LicenseDeveloped by Sagie Gur-Ari and licensed under the Apache 2 open source license.
RetroSearch is an open source project built by @garambo | Open a GitHub Issue
Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo
HTML:
3.2
| Encoding:
UTF-8
| Version:
0.7.4