[英]Batch - system can not find the file specified
我有以下批处理文件:
set file_name=workflow.xml
echo ^<?xml version="1.0" encoding="UTF-8"?^>> "%file_name%"
echo ^<?Siebel-Property-Set EscapeNames="true"?^>>> "%file_name%"
echo ^<ListOfPropertySetEx^>>> "%file_name%"
for /f "usebackq delims=|" %%f in (`dir /B /ON "%~1\SI0002\Workflow Process*"`) do
(C:\cygwin\bin\grep -m1 -e " PROCESS_NAME=\".*^\"" "%~1\SI0002\%%f" |
C:\cygwin\bin\sed "s/.* PROCESS_NAME=\x22\(.*\)\x22/ <PropertySet
FlowSearchSpec=\"\[Process Name\]=\^'\1\^'\"\/>/">> "%file_name%")
echo ^</ListOfPropertySetEx^>>> "%file_name%"
它不适用于批处理文件的in do部分:系统找不到指定的文件。 我已经正确安装了C:\\ cygwin \\ bin \\ grep [sed],这个批处理文件正在另一台机器上工作的意思是什么。 我想念什么? 提前致谢。
批处理非常具体,它接受if
和for
语句中的有效语法。 将for
循环更改for
以下样式...
for /f "usebackq delims=|" %%f in (`dir /B /ON "%~1\SI0002\Workflow Process*"`) do (
echo dir %%f
)
具体来说,将您的(
直接在do
指令之后,您的)
放在循环内容行之后的新行中。
我不知道这是否可以使您的脚本正常工作,但可以使您更进一步。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.