Recherche de site Web

Comment accéder à un argument de ligne de commande à l’aide de Rscript GNU R


Commençons par un exemple d’exécution simple du script frontal GNU R Rscript. Utilisez la commande pour localiser l’interpréteur Rscript :


which Rscript
/usr/bin/Rscript

Vous pouvez également définir votre interpréteur comme suit : /usr/bin/env Rscript


#!/usr/bin/Rscript

print("Hello R")

Ensuite, nous allons rendre le script exécutable :


chmod +x test.R

Et enfin exécuter :


./test.R 
[1] "Hello R"

L’exemple suivant montrera comment accéder à un argument de ligne de commande fourni à Rscript sur la ligne de commande. Modifions notre script pour afficher tous les arguments fournis à notre script R lors de l’exécution :


#!/usr/bin/Rscript
ENABLE command line arguments
args <- commandArgs(TRUE)

commandArgs()
print("Hello R")

Cette fois-ci, lors de l’exécution du script, nous allons également fournir plusieurs arguments sur la ligne de commande :


 $ ./test.R myarg1 myarg2
[1] "/usr/lib64/R/bin/exec/R" "--slave"                
[3] "--no-restore"            "--file=./test.R"        
[5] "--args"                  "myarg1"                 
[7] "myarg2"                 
[1] "Hello R"

Le dernier exemple montrera comment accéder à chaque argument de ligne de commande individuel dans le script Rscript. Modifions notre script pour accéder au premier et au deuxième argument de ligne de commande et effectuons l'ajout :


#!/usr/bin/Rscript
ENABLE command line arguments
args <- commandArgs(TRUE)

print first two command line arguments
print(args[1])
print(args[2])

Simple addition
print(as.double(args[1]) + as.double(args[2]))

Exécution:


#!/usr/bin/Rscript
ENABLE command line arguments
args <- commandArgs(TRUE)

print first two command line arguments
print(args[1])
print(args[2])

Simple addition
print(as.double(args[1]) + as.double(args[2]))

Articles connexes: