如何在 .sh 文件中 运行 R 作业
How to run R jobs within a .sh file
我正在尝试 运行 R 脚本。
这些是我的 R 脚本中的一些行 big2.r
dataa <- read.csv("/home/people/R2/big2.csv")
write.csv(head(dataa), file="/home/people/R2/head.csv")
当我在终端中执行 R CMD BATCH big2.r
时,它会给我一个 .Rout 文件以及 head.csv.
但是当我尝试使用 big2.sh
文件通过使用 qsub big2.sh
将作业提交到队列时,它没有给我一个 .Rout 文件或 head.csv 和该工作的 qstat 是 C standard
然后它就消失了。
这是我的.sh文件的内容
#!/bin/bash -l
module load R/3.2.2
R CMD BATCH big2.r
我做错了什么?提交执行 R 脚本的作业的正确方法是什么?
当我尝试 #!/usr/bin/r
时,出现以下错误。
-bash: /var/spool/torque/mom_priv/jobs/363059.sonic-head.SC: /usr/bin/r: bad interpreter: No such file or directory
我尝试了 Bash script: bad interpreter 中的解决方案,但没有帮助。
您可以使用类似 (batchR.sh):
的内容创建 shell 脚本
#!/bin/bash
#$ -S (your parameter can go here, one line for each)
#$ -j xyz
module load R/3.2.2 #in case you specifically need to load R on server node
R CMD BATCH big2.r
提交为
qsub batchR.sh
好的,试试这样的操作:
#!/usr/bin/bash -l
#PBS -N qsub_R_test
cd $PBS_O_WORKDIR
echo We are now in working directory $PWD
module load R/3.2.2
R CMD BATCH big2.r
我正在尝试 运行 R 脚本。
这些是我的 R 脚本中的一些行 big2.r
dataa <- read.csv("/home/people/R2/big2.csv")
write.csv(head(dataa), file="/home/people/R2/head.csv")
当我在终端中执行 R CMD BATCH big2.r
时,它会给我一个 .Rout 文件以及 head.csv.
但是当我尝试使用 big2.sh
文件通过使用 qsub big2.sh
将作业提交到队列时,它没有给我一个 .Rout 文件或 head.csv 和该工作的 qstat 是 C standard
然后它就消失了。
这是我的.sh文件的内容
#!/bin/bash -l
module load R/3.2.2
R CMD BATCH big2.r
我做错了什么?提交执行 R 脚本的作业的正确方法是什么?
当我尝试 #!/usr/bin/r
时,出现以下错误。
-bash: /var/spool/torque/mom_priv/jobs/363059.sonic-head.SC: /usr/bin/r: bad interpreter: No such file or directory
我尝试了 Bash script: bad interpreter 中的解决方案,但没有帮助。
您可以使用类似 (batchR.sh):
的内容创建 shell 脚本#!/bin/bash
#$ -S (your parameter can go here, one line for each)
#$ -j xyz
module load R/3.2.2 #in case you specifically need to load R on server node
R CMD BATCH big2.r
提交为 qsub batchR.sh
好的,试试这样的操作:
#!/usr/bin/bash -l
#PBS -N qsub_R_test
cd $PBS_O_WORKDIR
echo We are now in working directory $PWD
module load R/3.2.2
R CMD BATCH big2.r