I am running R on EC2 spot instances and I need R to terminate the instance and cancel the spot request once the script has run.
For that I have set the \"Request ID
Using Sys.getenv() you see all variables listed in the current environment.
However, they are different from those used in your current shell, for example specified in .profile.
To set the variables for R create a .Renviron file in your home directory and write there
MYDIRECTORY="/home/wherever"
After restarting R you will be able to access this variable with
Sys.getenv("MYDIRECTORY")
I'm pretty new to R but my approach was this: I had project-level environment variables stored in a .env file. To make it accessible in R, I used
> readRenviron(".env")
Then to access a specific variable
> Sys.getenv("RDS_UID")
And it worked perfectly.
You want Sys.getenv() as in Sys.getenv("PATH"), say.
Or for your example, try
SIR <- Sys.getenv("SIR")
system(paste("ec2-cancel-spot-instance-requests", SIR))
As for setting variables at startup, see help(Startup) to learn about ~/.Renvironment etc