나는이 쉘 스크립트쉘 스크립트에서 실행 R 스크립트의 종료 상태를 얻는 방법
#!/bin/bash
RES=$(./abc.R 100)
r_status=echo $?
내부에서 RSCRIPT를 실행 해요 가정 해 보겠습니다의 실행을 중지 abc.R에서 일부 코드가
#!/usr/bin/env Rscript
...
...
if(nrow(status) == 0)
{ stop("The list id is not present in requests table. Please check.") } else if (status != 'COMPLETED')
{ stop("The list is not in COMPLETED state. Please check.")}
...
...
쉘 스크립트에서 abc.R의 종료 상태를 캡처 할 수 없습니다. R 실행을 중지하고 쉘 스크립트에서 프롬프트로 종료합니다.
R의 종료 상태를 캡처 할 수있는 방법이 있습니까?
어쩌면 [이 게시물] (http://stackoverflow.com/questions/7681199/make-r-exit-with-non-zero -status-code) 도움이 될 것입니다. – lmo
스크립트의 종료 상태는 대개 스크립트에서 실행 된 마지막 명령의 종료 상태입니다. 이것이 필요한지 확실하지 않습니다. – sjsam
나는 당신의 문제가'r_status = $ (echo $?)'(또는 바람직하게'r_status = $ (echo "$?")') 대신'r_status = echo $? '를 사용하고 있다고 생각한다. [데모] (https://gist.github.com/nathan-russell/200e4311957908cc816abe014677bea3). – nrussell