使用 littler 执行 R 脚本
littler (发音为 little r )( cran )除了提供其他功能外,还提供了两种从命令行使用 littler 的 r
命令运行 R 脚本的可能性(当使用 Linux 或 MacOS 时)。
安装更小的
来自 R:
install.packages("littler")
r
的路径印在终端上,就像
You could link to the 'r' binary installed in
'/home/*USER*/R/x86_64-pc-linux-gnu-library/3.4/littler/bin/r'
from '/usr/local/bin' in order to use 'r' for scripting.
为了能够从系统的命令行调用 r
,需要一个符号链接:
ln -s /home/*USER*/R/x86_64-pc-linux-gnu-library/3.4/littler/bin/r /usr/local/bin/r
使用 apt-get(Debian, Ubuntu):
sudo apt-get install littler
使用带有标准 .r 脚本的 littler
使用 r
中的 r
,可以执行独立的 R 脚本而无需对脚本进行任何更改。示例脚本:
# User message (\n = end the line)
cat("Input numbers, separated by space:\n")
# Read user input as one string (n=1 -> Read only one line)
input <- readLines(file('stdin'), n=1)
# Split the string at each space (\\s == any space)
input <- strsplit(input, "\\s")[[1]]
# convert the obtained vector of strings to numbers
input <- as.numeric(input)
# Open the output picture file
png("hist.png",width=400, height=300)
# Draw the histogram
hist(input)
# Close the output file
dev.off()
请注意,没有 shebang 位于脚本的顶部。当保存为例如 hist.r
时,它可以从系统命令直接调用:
r hist.r
在 shebanged 脚本上使用 littler
使用 shebang 也可以使用 littler 创建可执行的 R 脚本
#!/usr/bin/env r
在脚本的顶部。必须使用 chmod +X /path/to/script.r
使相应的 R 脚本可执行,并且可以从系统终端直接调用。