tl; dr : Как я могу вызвать системную команду y | conda create --name gee_interface
из консоли R, например, через system2 ()? Мне достаточно комфортно с system2('conda', c('create', '--name', 'gee_interface'))
, но я не знаю, как обращаться с трубами в 'y' через system2()
.
Подробности Я пытаюсь использовать R консоль для запуска команды bash conda create --name gee_interface
(OSX Mojave с установленной Anaconda).
В терминале эта команда выполняется просто отлично, но побуждает меня ответить с помощью Proceed ([y]/n)?
(я отвечаю 'y' и все работает гладко).
В R я запускаю
Sys.setenv(PATH = paste(c("/Applications/anaconda3/bin", Sys.getenv("PATH")), collapse = .Platform$path.sep)) # ensures that system2() finds conda
system2('conda', c('create', '--name', 'gee_interface')) # This is the key line for the purposes of this question
При запуске второй строки [т.е. system2('conda', c('create', '--name', 'gee_interface'))
] процесс никогда не завершается, но быстро падает до нуля использования ЦП. Предположительно система ждет моего ответа на приглашение, но я не знаю, как его предоставить. Как это сделать с помощью сценария R? Также обратите внимание, что в моем конкретном случае число раз, которое мне нужно, чтобы ответить 'y', является переменным, в зависимости от того, существует ли уже окружение с именем gee_interface
.