
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-cm... . 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 <wwwhsd@gmail.com>
Veja o help da função commandArgs()
2011/8/18 FHRB Toledo <fernandohtoledo@gmail.com>:
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 R-br@listas.c3sl.ufpr.br 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 R-br@listas.c3sl.ufpr.br 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.