2016-04-03 66 views
0

我是R新手,我被困在一個非常簡單的任務中。如何等待從Windows運行的R腳本中的用戶輸入CMD

我想從控制檯運行R腳本,但我希望腳本能夠讀取用戶輸入。

這是怎麼了,我從劇本閱讀:

library = readLines(n = 1L) 
    if(library == "1") 
    { 
    library = "GUDHI" 
    } 

這就是我如何從我的劇本R-便攜式使用.bat:

@echo on 
cd.. 
cd.. 
cd.. 
cd.. 
cd.. 

PATH C:\Users\MyUser\Desktop\App\RFolder\R-Portable\App\R-Portable\bin;%path% 
cd C:\Users\MyUser\Desktop\App\RFolder 
Rscript Phom.R 1 
pause 

當我運行此.BAT它引發錯誤(自變量是長度爲零的):

enter image description here

就好像控制檯沒有等待用戶輸入一樣。

問題不是.bat代碼。如果我從我的腳本中刪除readLines函數並對輸入進行硬編碼,它可以很好地工作。我也嘗試了readline函數,但沒有成功。

謝謝。

回答

1

解決方案進行互動[R腳本從Windows CMD:

cat("Prompt Message: ") 
    library = readLines(con = "stdin", 1) 

我不知道如果提示必須以結束「:」,但我有麻煩時,我刪除了繩子。

這對我有用,我希望這可以幫助別人。