Я разрабатываю пакет, который предоставляет интерфейс R (куча функций, которые будут использоваться в интерактивном режиме) и интерфейс командной строки через Rscript. Это второй один работает через небольшой пусковой, например, в командной строке:Как позвонить Rscript из R?
Rscript mylauncher.R arg1 arg2 arg3
бы назвать функцию моего пакета. Я хотел бы проверить пару команд из R. Ничего необычного, просто убедитесь, что все работает без ошибок. Если я проверить эти вызовы делают в исходном файле R:
system("Rscript mylauncher.R arg1 arg2 arg3")
Как я могу быть уверен, что я назвал правильный Rscript? В случае наличия нескольких установок R? (что на самом деле имеет место в моей настройке). Другой подход был бы записи в исходном файле R:
source("mylauncher.R")
Но я не вижу, как указать командную строку (я бы избежать трюк перезапись функции commandArgs
, потому что я хочу, чтобы проверить также правильная токенизация командной строки). У кого-нибудь есть идея?
Спасибо!
Знаете ли вы, что «вы можете позвонить R из R»? Другими словами, вы не объяснили, почему вам нужно выйти в «Rscript», когда вы уже находитесь в R. –
@DirkEddelbuettel Я считаю, что я объяснил это «Я бы хотел проверить пару команд из R», то есть я хотите проверить, не привели ли некоторые команды, написанные на терминале unix, к ошибке, и эта ошибка вызвана неправильной версией вызываемого Rscript. – JavaNewbie
возможно (в системе Unix) 'system (" which Rscript ")'? –