我正在尝试编写一个批处理脚本,其中我对源路径和目标路径进行了硬编码。我还列出了我想要复制的软件。例如SET list = python perl。我想知道如何确定我是否已经拥有最新版本的软件。我可以通过环境变量提取这些信息吗?在此先感谢您的帮助。
编辑:道歉。是的,这是在Windows操作系统上。在提出这个问题之前,我使用命令“set”来查看是否有任何自动设置的包含软件版本的电子变量,但它们似乎都不包含这类信息。另外,我正在使用robocopy。ROBOCOPY%SOURCE_PATH %% TARGET_PATH%/ E / Z / COPYALL / SECFIX / R:10 / W:1
答案 0 :(得分:0)
此列表中有多少个软件?每个人都有不同的方式来检查版本 - 例如;使用python,您可以通过查找C驱动器中的目录来检查版本 - 但这非常不可靠,我会做类似以下的事情:
> getVer.py ( echo import sys & echo print^(sys.version^) )
for /F %%a in ('getVer.py') do set pyver=%%a
del getVer.py
echo %pyver%
这就是我必须这样做的原因,因为某些原因,this对我来说不起作用(即使我安装了Python)。
如果你很乐意假设安装了Python IS ,那么我的方法很有用,否则你最终会在脚本中提出一个对话框,询问打开.py
的软件文件。
编辑:我通过提问here了解了不同的方法来检查您的程序是否存在。