我有一个perl脚本,可以在计算机上找到Visual C安装。它适用于同事机器。它在我的机器上失败了。我认为这是因为我有一个不同版本的Visual Studio,它安装在不同的位置。
这是我认为失败的地方
$needpath = 1;
$path = $ENV{"PATH"};
if(grep(/VC/, $path)) {
print "Found Visual C on path\n";
$needpath = 0;
}
Q1。有人能解释一下$ ENV {“PATH”};是什么? grep函数说它是一个列表。什么列表?
Q2。我的VS位置是“C:\ Program Files(x86)\ Microsoft Visual Studio 12.0 \ VC \”为什么这个脚本找不到它?
我之前从未使用过perl。请善待!感谢。
答案 0 :(得分:1)
$ENV{"PATH"}
是perl PATH环境变量。在您的示例grep
过滤器列表中,大小等于1,因此
if ($path =~ /VC/) { .. }
您的VS似乎不在路径中,可以通过set path
答案 1 :(得分:0)
我的机器上安装了VS 2010和VS 2013 在我的道路上什么也没有,我相信视觉工作室与相对路径一起工作 我认为您需要类似this之类的内容来查看已安装的软件。
答案 2 :(得分:0)
Visual Studio不会为正常安装更新PATH
。 Visual Studio版本中有几个命令行工具集,某些计算机安装了两个或更多版本。这些将导致问题应该放在PATH
中。为了避免这种情况,Visual Studio会为命令窗口安装许多快捷方式,并为各种目的设置正确的路径。这些文件将写入“ Visual Studio 2013 \ Visual Studio工具”和“ Microsoft Visual Studio 2012 \ Visual Studio工具”的开始菜单文件夹中。
要查找已安装的版本,您可能最好查看安装Visual Studio软件的目录。 C:\Program Files
等类似的地方。