获取.bat文件

时间:2015-08-11 15:02:49

标签: python batch-file

我有一个运行.bat文件的脚本应用程序,并且每隔x天定期备份我的计算机上的文件。它非常简单,我将它用于那些没有良好备份功能的程序。

在下面的示例中,我在.bat文件中设置了一个或多个环境变量,然后在调用python脚本时在列表中调用它们。

我的代码:

set LIGHTROOM_PROGRAMDATA=ProgramData\Adobe\Lightroom
set LIGHTROOM_PICTURES=Some_User\Pictures\Lightroom
set LIGHTROOM_APPDATA=Some_User\AppData\Roaming\Adobe\Lightroom
set LIGHTROOM_DB_BACKUP=Some_Backup_Location

python path_to_python_script\software_backup.py -s %LIGHTROOM_PICTURES% %LIGHTROOM_APPDATA% %LIGHTROOM_PROGRAMDATA% -d %LIGHTROOM_DB_BACKUP%

其中-s是我要备份的源目录,-d是我要将这些文件发送到的目录。

我想要的是什么:

我希望能够编写可能无限数量的环境变量,这些变量可以在.bat文件中定义,或者从另一个文本文件添加到.bat文件中,以便脚本具有更多智能。为了使其工作,脚本必须“知道”#34;哪些环境变量应由脚本(导入的)与用户在系统级别可能具有的其他环境变量进行备份。我宁愿这样做:

  1. 用户/管理员可以在某处包含要备份的所有变量的文本文件。
  2. 脚本找到该文本文件并将env变量带入.bat文件
  3. 该脚本会读取这些变量,无论它们是如何命名的,因为脚本会以某种方式将它们与全局变量区分开来,这些变量可能存在于.bat之外。
  4. 我目前的解决方案:

    现在我已经使用命名前缀/后缀来查找匹配项,然后将它们用于脚本,但我不想强制使用命名约定来实现此功能。

    是否有一个更清晰的解决方案来区分.bat中设置的环境变量与我目前使用的环境变量之间的其他环境变量?

0 个答案:

没有答案