R 如何添加上下文菜单选项以在给定的工作目录中启动程序
在windows上安装Git时,当您右键单击文件夹到“Git Bash Here”时,它会添加一个上下文菜单选项。其方法是添加如下注册表项:R 如何添加上下文菜单选项以在给定的工作目录中启动程序,r,windows,registry,contextmenu,right-click,R,Windows,Registry,Contextmenu,Right Click,在windows上安装Git时,当您右键单击文件夹到“Git Bash Here”时,它会添加一个上下文菜单选项。其方法是添加如下注册表项: Windows Registry Editor Version 5.00 [HKEY_CLASSES_ROOT\Directory\shell\git_shell\command] @="\"C:\\Program Files\\Git\\git-bash.exe\" \"--cd=%1\"" 注意末尾的cd参数,它将目录名传递给程序 我想为R(和其他
Windows Registry Editor Version 5.00
[HKEY_CLASSES_ROOT\Directory\shell\git_shell\command]
@="\"C:\\Program Files\\Git\\git-bash.exe\" \"--cd=%1\""
注意末尾的cd
参数,它将目录名传递给程序
我想为R(和其他程序)做一些类似的事情。不幸的是,R不接受cd
参数。这将启动R:
Windows Registry Editor Version 5.00
[HKEY_CLASSES_ROOT\Directory\shell\R\command]
@="\"C:\\Program Files\\R\\R-3.4.3\\bin\\x64\\Rgui.exe\" \"--cd=%1\""
但它会给出一条错误消息,指出cd
参数无法识别,并且Rgui将以默认工作目录开始,这将破坏整个要点
我真正想让它做的是等效于此命令:
start "R" /D %1 "C:\Program Files\R\R-3.4.3\bin\x64\Rgui.exe"
其中
%1
是右键单击的文件夹。这可能吗?您可以编写在启动时运行的R代码,并检查命令行参数。
您可以将以下代码放在C:\Program Files\R\R-3.4.3\etc\R profile.site
(或启动时执行的任何其他文件)的末尾:
本地({
processArg您可以编写在启动时运行的R代码,并检查命令行参数。
您可以将以下代码放在C:\Program Files\R\R-3.4.3\etc\R profile.site
(或启动时执行的任何其他文件)的末尾:
本地({
processArg可能是对的更好的问题可能是对的更好的问题
local({
processArg <- function(arg) {
parts <- strsplit(arg, "=")[[1]]
if (length(parts) == 2) {
if (parts[1] == "R_startup_wd") {
setwd(parts[2])
}
}
}
invisible(sapply(commandArgs(FALSE), processArg))
})