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]))