jra*_*ara 1 svn r rodbc rstudio
我正在使用RStudio和SVN存储库来控制我的R项目和文件.通常我会在这些脚本的开头从数据库中获取数据.我正在使用这样的RODBC:
channel <- odbcConnect(mydbconn, uid = "", pwd = "")
Run Code Online (Sandbox Code Playgroud)
现在,我不想在这些脚本中存储连接详细信息,用户ID和密码,因为如果这些是硬编码的,那么每个可以访问SVN repo的人都能看到我的密码等.
在这种情况下,最好的方法是什么?运行此脚本时如何提示这些详细信息(连接,用户ID和密码)(例如从RStudio或命令行)?
如果要提示用户,可以使用以下[readline][1]方法:
connection <- readline("Connection: ")
uid <- readline("User id: ")
cat("Password: ")
system("stty -echo")
password <- readline()
system("stty echo")
Run Code Online (Sandbox Code Playgroud)
请注意避免将密码回显到屏幕的小技巧.
另一种选择是将这些值存储在配置文件(例如config.local)中并插入load(config.local)脚本中.确保该文件未进行版本控制svn propset svn:ignore "config.local . ".或者,您可以将该文件存储在不受svn控制的目录中.