在批处理脚本中读取STDIN中的所有数据

时间:2017-12-04 08:10:43

标签: python batch-file io stdin

我正在尝试在windows上编写一个SVN后锁脚本。我想使用批处理脚本来调用python脚本,并将REPO,USER和锁定文件的路径作为其args传递。

在.tmpl文件中说,REPO和USER都是预定义的参数,锁定的路径是通过STDIN传递的,所以我在我的.bat文件中尝试了这个:

@echo off
set REPOS=%1  
set USER=%2   
set /p files=

C:\Python27\python.exe C:\test.py %REPOS% %USER% %files%

如果我锁定单个文件,它可以正常工作。但是如果我使用单个svn lock命令锁定多个文件,我只能获得带有'set / p files ='的第一个路径。

如何使用批处理脚本获取锁定路径的完整列表?谢谢你的帮助!

1 个答案:

答案 0 :(得分:0)

Python进程将继承其父进程的stdin (运行批处理脚本的shell) 所以只需将读取它的任务推迟到Python程序 - 它将在much easier to do