私はこのシェルスクリプトシェルスクリプトで実行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