我需要创建一个js文件的符号链接。 我尝试了下面的内容:
x = "C:/Program Files/apache-tomcat-7.0.41/webapps/analytics/js/analyticsController.js"
y = "c:/svn/web/src/main/webapp/analytics/js/analyticsController.js"
exec ("mklink #{x} #{y}")
以及system ("mklink #{x} #{y}")
他们都没有创建符号链接。 我能够使用ruby脚本
运行system ("echo Hello") #prints hello
之类的命令
mklink不会创建符号链接。控制台也没有显示任何结果。
答案 0 :(得分:2)
Ruby 2.3支持Windows上的符号链接。您可以使用File.symlink
。
答案 1 :(得分:1)
Windows上的mklink command(7及以上版本)需要一个参数来表示要进行的链接类型。 Windows上的符号链接是普通用户可以自己制作的“快捷方式”。您可能打算创建的是一个硬链接或“连接点”。创建联结点的命令是:
mklink /J <destination> <source>
所以,在红宝石中,这是:
exec ("mklink /J #{x} #{y}")
显然cmd.exe shell只能访问mklink,因此必须先调用它。
exec ("cmd.exe /c \"mklink /J #{x} #{y}\"")
最后一点(谨慎)。在Windows上建立链接需要完全管理员访问权限。