Como era de se esperar... elegante solução... valeu mesmo Henrique! A propósito, compartilhando com a lista aí vai:
* Solução tirada e adapatada de: http://quantitative-ecology.blogspot.com/2007/08/including-arguments-in-r-cmd-batch-mode.html . No começo do seu script acrescente: > args <- commandArgs(TRUE) E mais: > # os argumentos agora sao uma lista de vetores de caracteres > if(length(args) == 0) > { # testa se sao passados argumentos pelo BASH > print("Não foram passados ARGUMENTOS") # imprime 'AVISO' e usa valores 'PADRAO' > ## lista de valores 'PADRAO' > arg1 <- 1 # ARG1 > arg2 <- 1 # ARG2 > arg3 <- 1 # ARG3 > } else { # se sao: atribui os valores ao script > for(i in 1:length(args)){ > eval(parse(text = args[[i]])) > } > } Esse trecho tem a função de ver quais argumentos foram passados via bash e os passa p/ o script... Caso não seja passado nenhum argumento ele "usa" os argumentos default! Isto posto, executa-se o script de forma semelhante ao normal: $R CMD BATCH '--args arg1=1 arg2=2 arg3=3 script.R saida.out & abraço, FH A função desse trecho é verificar 2011/8/18 Henrique Dallazuanna <[email protected]> > Veja o help da função commandArgs() > > 2011/8/18 FHRB Toledo <[email protected]>: > > Senhores, > > > > Gostaria de saber se existe uma forma elegante de rodar um script em > BATCH > > passando argumentos como opção na linha de comando? > > > > Explico: tenho um script que faz uma tarefa "X", para tal no script tenho > > alguns argumentos especificados do tipo arg1 <- valorA. Entretanto queria > > rodar o mesmo escript variando o argumento parao valorB por exemplo. Na > > minha ignorância estou editando o script no valorB do arg e rodando > denovo. > > > > Pois bem, existe uma forma melhor e menos tosca de se fazer isso? > > > > desde já grato, > > FH > > > > _______________________________________________ > > R-br mailing list > > [email protected] > > https://listas.inf.ufpr.br/cgi-bin/mailman/listinfo/r-br > > Leia o guia de postagem (http://www.leg.ufpr.br/r-br-guia) e forneça > código > > mínimo reproduzível. > > > > > > -- > Henrique Dallazuanna > Curitiba-Paraná-Brasil > 25° 25' 40" S 49° 16' 22" O > _______________________________________________ > R-br mailing list > [email protected] > https://listas.inf.ufpr.br/cgi-bin/mailman/listinfo/r-br > Leia o guia de postagem (http://www.leg.ufpr.br/r-br-guia) e forneça > código mínimo reproduzível. >
_______________________________________________ R-br mailing list [email protected] https://listas.inf.ufpr.br/cgi-bin/mailman/listinfo/r-br Leia o guia de postagem (http://www.leg.ufpr.br/r-br-guia) e forneça código mínimo reproduzível.
