Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/r/67.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Mac到Windows与调用Bash的R脚本的兼容性_R_Windows_Bash_Macos_Compatibility - Fatal编程技术网

Mac到Windows与调用Bash的R脚本的兼容性

Mac到Windows与调用Bash的R脚本的兼容性,r,windows,bash,macos,compatibility,R,Windows,Bash,Macos,Compatibility,当前脚本 我在Mac OSX上工作。我有一个R脚本,我喜欢用它来组织我的文件,并通过LaTex生成.pdf。为了(1)使用LaTeX生成.pdf,以及(2)操作一些文件和目录,我使用R中带有system(“”)的Bash脚本 从Mac到Windows 我想把这个R脚本(一旦编译成可执行文件)提供给一个对编程一无所知并使用Windows的人。我不知道windows提示符命令是如何工作的,它使用什么语言。我担心(1)我不能在Windows上使用函数system(“”),以及(2)我不能使用bash,

当前脚本

我在Mac OSX上工作。我有一个R脚本,我喜欢用它来组织我的文件,并通过LaTex生成.pdf。为了(1)使用LaTeX生成.pdf,以及(2)操作一些文件和目录,我使用R中带有
system(“”
)的Bash脚本

从Mac到Windows

我想把这个R脚本(一旦编译成可执行文件)提供给一个对编程一无所知并使用Windows的人。我不知道windows提示符命令是如何工作的,它使用什么语言。我担心(1)我不能在Windows上使用函数
system(“”
),以及(2)我不能使用bash,例如
system(“rm dir/file.txt”)

问题


为了使我的脚本与Windows兼容(假设我对Windows一无所知),您认为对我来说最简单的方法是什么?我是否能够在Windows上使用
system(“”
和Bash from R?

我认为最好的解决方案是分别处理这两种情况(请记住,Windows路径也不同于unix路径)

在windows cmd中搜索unix等效命令应该没有问题


还请记住,如果您需要R脚本来执行LaTeX二进制文件,由于LaTeX具有巨大的依赖性,它几乎会扼杀可移植性

我认为最好的解决方案是分别处理这两种情况(请记住,windows路径也不同于unix路径)

在windows cmd中搜索unix等效命令应该没有问题


还请记住,如果您需要R脚本来执行LaTeX二进制文件,由于LaTeX具有巨大的依赖性,它几乎会扼杀可移植性

根据您想要执行的操作,使用R命令代替
system
/bash命令可能就足够了,这样平台差异就可以自动处理了。该工具包具有将latex转换为pdf的
texi2pdf
。另外,
?文件
中记录的R命令可能会有所帮助。根据您想要执行的操作,使用R命令代替
系统
/bash命令可能就足够了,以便自动处理平台差异。该工具包具有将latex转换为pdf的
texi2pdf
。此外,
?文件
中记录的R命令可能会有所帮助。
if(.Platform$OS.type == "unix") {
  system("rm dir/file.txt")
  [...]
} 
else {
  system("DEL /Q dir\file.txt")
  [...]
}