script bash: error "Rscript: comando no encontrado"

script bash: error "Rscript: comando no encontrado"

Tengo el siguiente script bash intentando ejecutarlo en Linux pero recibo un mensaje de error que dice line 31: Rscript: command not found. ¿Podrías darme un consejo si me equivoco?

#!/bin/bash
#PBS -S /bin/bash
#PBS -N garunsmodel
#PBS -l mem=10g
#PBS -l walltime=02:00:00
#PBS -A improvingherds
#PBS -m ae


nodeDir=`mktemp -d /tmp/phuong.XXXXX`

cp -r /group/dairy/phuongho/garuns $nodeDir

cd $nodeDir

cd garuns
module load gcc vle // this is to load vle platform
rm -rf out
mkdir out

#In garuns.vpz. The output file path has to be changed.
#to an absolute path that's available on the node the script is running.

XXX=`pwd`
sed -i "s|/group/dairy/phuongho/garuns/out|$XXX/out/|" exp/garuns.vpz
Rscript  R/repetability.R

DATE=`date +%Y%m%d-%H%M%S`
mkdir "/group/dairy/phuongho/job.$DATE"

cp -r out  "/group/dairy/phuongho/job.$DATE"

Cuando intenté acceder manualmente para tmp/phuong.XXXXX/garunsluego ejecutar R, funcionó bien.

Respuesta1

Si R ya se ha instalado, ¿podría ser que la PATHvariable recoja el error RScript? Comprobar conwhich RScript

En este caso, intente export PATH=/path/to/alternate/r/bin:$PATH o intente la fuerza bruta dando la ruta absoluta al hacer referencia RScript, por ejemplo ~/R-3.2.5_patched/bin/RScript/R/repetability.R

Respuesta2

Necesitas instalar R

Por ejemplo en Ubuntu:

sudo apt-get install r-base-core

Entonces el Rscriptcomando será reconocido en la línea de comando.

Hice esto y funcionó, pero tenga en cuenta que la instalación fue bastante masiva con cientos de dependencias instaladas. La instalación tardó unos minutos.

Respuesta3

Parece un script que se envía a un clúster informático a través de algo como SLURM. Debe hablar con el administrador de su sistema y preguntarle si R está instalado en el clúster y, de ser así, cómo habilitar el acceso a él en su secuencia de comandos.

En los clústeres a los que tengo acceso, será necesario cargar algún software con un module load somesoftware/versioncomando, que actualiza/establece las variables de entorno necesarias para ejecutar el software.

Respuesta4

Recibí el mismo mensaje de error pero por un motivo diferente. Publicarlo aquí ya que la gente aterrizará aquí como lo hice yo también.

Verifique que su primera línea sea #!/bin/bash(que no es su problema) en lugar de #!/bin/sh, de lo contrario, algunos comandos como module load <>no se ejecutarán.

información relacionada