2012-12-23 8 views
22

A differenza del comando simile R CMD BATCH che per impostazione predefinita produce un file di output che contiene eventuali messaggi di errore che potrebbero causare l'interruzione di uno script, non sono riuscito a trovare un modo per farlo con Rscript. Ho provato con una pipa in shell Linux per ottenere questo:Cattura degli errori Rscript in un file di output

RScript --no-save --no-restore --verbose myRfile.R > outputFile.Rout 

ma questo sarà solo pipe qualsiasi output che si è verificato prima si verifica un errore, quindi il file outputFile.R non contiene alcuna informazione di errore. Qualcuno sa come ottenere la cattura di eventuali errori che si verificano nell'esecuzione di un file R utilizzando RScript e salvandolo in un file?

+1

2> errorFile.Rout –

risposta

35
RScript --no-save --no-restore --verbose myRfile.R > outputFile.Rout 2> errorFile.Rout 

Per mettere l'uscita e l'errore nello stesso file (supponendo sh/bash)

RScript --no-save --no-restore --verbose myRfile.R > outputFile.Rout 2>&1 
+0

stupefacente. Ma potresti istruirmi. Qual è il significato della sintassi '2>'? – drstevok

+0

'2>' significa reindirizzare l'errore standard (numero descrittore di file '2'). –

+0

Grazie. Qualcos'altro per me da leggere in giro :) – drstevok