Выполнение остановлено, когда я использую knitr и Rscript с opts_chunk

Я написал сценарий bash в Mac OS, который берет мой файл .rnw, связывает его и затем создает .pdf. Чтобы связать свой файл, я использую команду

Rscript -e "library(knitr); knit('file.rnw', encoding='utf8')"

и все работает нормально. Однако мне не нужны символы ## в моем последнем документе. Я протестировал, используя приглашение R, следующие команды

library(knitr)
opts_chunk$set(comment=NA)
knit('file.rnw', encoding='utf8')

и они дают мне именно то, что я хочу: документ без комментариев в выводе R-команд. Но если я попытаюсь бежать

Rscript -e "library(knitr); opts_chunk$set(comment=NA); knit('livro.rnw', encoding='utf8')"

я получил

Error: could not find function "opts_chunk"
Execution halted

в результате. Что я делаю неправильно? Как я могу запросить параметры для моего чанка в knitr с помощью командной строки?


person Marcus Nunes    schedule 26.03.2013    source источник
comment
опубликовал перекрестную ссылку в R-help и ответил там ; Я надеюсь, что кто-нибудь сможет перенести ответ сюда.   -  person Yihui Xie    schedule 26.03.2013
comment
Вместо этого вы можете поместить следующее в свой файл RMD, например ... knitr::opts_chunk$set(echo=TRUE) внутри r chunk.   -  person agent18    schedule 28.02.2019


Ответы (1)


Я не уверен, что имел в виду Ихуэй, когда сказал «переместите ответ сюда», но здесь - это ответ R-help Дункана Мердока, который их ратифицировал:

Это похоже на проблему с bash: похоже, $ set заменяется пустой строкой. Используйте соответствующие кавычки или экранирование, чтобы сказать этого не делать. (Я думаю, что использование одинарных кавычек вокруг команды будет работать; вам понадобятся двойные кавычки внутри них.)


И Йихуэй добавил:

Да, я считаю, что это была проблема. Тот же вопрос задан здесь: https://github.com/yihui/knitr/issues/162#issuecomment-9017997

person IRTFM    schedule 26.03.2013
comment
Просто мне было лень копировать и вставлять :) - person Yihui Xie; 27.03.2013