2013-06-26 3 views
6

세션을 대화식으로 강제 실행하는 R 스크립트를 어떻게 실행합니까? ?interative의 문서는 --ess--interactive이이를 제어하지만 어떤 영향도주지 않는다고 말합니다.대화 형 R 세션 강제 적용

윈도우 :

C:\Program Files\R\R-3.0.1\bin>R -e "interactive()" --ess -s 
[1] FALSE 

맥 :

$ R -e "interactive()" --interactive -s 
[1] FALSE 

어떤 생각?

EDIT : 일부 항목 (예 : install.packages)에서 작동하는 기본 네임 스페이스를 해킹 할 수 있다고 가정합니다. 그러나 이것은 Rscript에 우리의 사랑하는 littler 대안을 마련했던 솔루션에 대한 빈약 한 변명 ...

$ R -e "unlockBinding('interactive',as.environment('package:base'));assign('interactive',function() TRUE,envir=as.environment('package:base'));base::interactive()" --interactive -s 
[1] TRUE 
+2

왜'interactive()'가 true 인 곳에서 스크립트를 실행해야합니까? –

+0

사용자 입력이 필요한 경우'file ("stdin")'을 사용할 수 있습니다. 이는'stdin()'을 사용하는 것과는 다르며, 스크립트를 실행할 때 건너 뛸 것입니다. –

+0

@MatthewPlourde : 기본 그래픽 장치와 같은 다른 것들을 제공합니다. –

답변

4

이고, 나는 다음 토글 추가 :

[email protected]:~$ r -p -e 'interactive()' 
[1] FALSE 
[email protected]:~$ r -i -p -e 'interactive()' 
[1] TRUE 
[email protected]:~$ 

그것은 잘하는 것이 될 수있다을 R은 호출 할 때 항상 false로 설정합니다.

+0

humm, ... R 명령의 요점은 그들이 말하는 것을하지 않으면 무엇입니까? –

+0

아마도 r-devel에서 물어볼 수 있습니까? –