2013-07-13 4 views
2

몇 가지 일을하고 Rscript를 호출하는 bash 스크립트가 있습니다. 다음은 간단한 예를 설명하기 :bash 스크립트 호출에서 인수를 Rscript로 넘김

test.sh :

Rscript test.r 

test.r :

args <- commandArgs() 
print(args) 

가 어떻게 R 인쇄 명령 행 결과에 ./test.sh hello 사용할 수 있습니다 여보세요? * 내부 폐기하는 방법 $에서 인수의 많은 필요

#!/bin/bash 

Rscript /path/to/R/script --args "$*" 

exit 0 

그런 다음 선택할 수 있습니다

답변

4

당신은 bash는이 떠들썩한 파티 스크립트 같은 것을 사용하여 R 스크립트에 모든 인수를 전달할 수 있습니다

test.sh :

Rscript test.r $1 
1

R.

내가이 처리하는 방법입니다 발견 6,

test.r는 :

args <- commandArgs(TRUE) 
print(args) 

$1은 bash는 스크립트에 전달 된 첫 번째 인수를 나타냅니다.

commandArgs(TRUE) 대신 commandArgs()을 호출하면 bash에서 전달되지 않고 내부적으로 호출되는 다른 인수가 인쇄됩니다. ASB의 대답에 대해서는

0

:은 "--args"를 작동하지 않습니다 bash는 스크립트의 라인에 "--args"를 가진

내가으로 전달하려는 실제 인수의 문자로 찍은 내 R 스크립트. "Rscript /path/to/my/rfile.R arg1 arg2"

배시 버전 : GNU bash, 버전 3.2.25 (1) -release (x86_64-redhat-linux-gnu) Rscript 버전 : R 스크립팅 프런트 엔드 버전 3.0.1 (2013-05-16)

관련 문제