Batch file Forfiles命令和PDF
我想用批处理文件将一些文本文件转换为PDF格式,因此,使用此文档: 我的批处理文件:Batch file Forfiles命令和PDF,batch-file,converter,Batch File,Converter,我想用批处理文件将一些文本文件转换为PDF格式,因此,使用此文档: 我的批处理文件: @echo关闭 Hackoo 2016 avec NitropPDF格式的标题转换 模式con cols=130行=15和颜色0A 设置“NitroPDF=e:\Program Files\Nitro\Pro 10\NitroPDF.exe” 设置“Source=%userprofile%\Desktop\SourceFolder” 设置“Destination=C:\Users\Public\Document
@echo关闭
Hackoo 2016 avec NitropPDF格式的标题转换
模式con cols=130行=15和颜色0A
设置“NitroPDF=e:\Program Files\Nitro\Pro 10\NitroPDF.exe”
设置“Source=%userprofile%\Desktop\SourceFolder”
设置“Destination=C:\Users\Public\Documents\Pdf”
如果不存在“%Destination%”MD“%Destination%”
回显\%PDF%\“&暂停
::************************************************************************
:换算
FORFILES/P%source%/M*.txt/C“cmd/C\%pdf%\”/cv@PATH
暂停和退出
所以我得到了一个错误:`
“E:\Program”未被识别为内部控制
或外部可操作程序或批处理文件
在此代码之前,我使用了一个正常的for
,但问题是NitroPDF.exe
在转换每个文件后无法关闭,因此,我必须手动关闭它才能在批处理文件中继续:
@echo关闭
Hackoo 2016 avec NitropPDF格式的标题转换
模式con cols=130行=15和颜色0A
设置“NitroPDF=e:\Program Files\Nitro\Pro 10\NitroPDF.exe”
设置“Source=%userprofile%\Desktop\VME\u transfer”
设置“Destination=C:\Users\Public\Documents\Pdf”
如果不存在“%Destination%”MD“%Destination%”
::************************************************************************
:换算
对于(“%source%\*.txt”)中的%%a,请执行以下操作(
回音转换du fichier“%%a”vers“%%~na.pdf”…&echo。
“%PDF%”/cv“%%a”
rem Taskkill/IM“NitroPDF.exe”/F
电话:Deplacer
cls&echo。
)
rem Taskkill/IM“NitroPDF.exe”/F
暂停和退出
::************************************************************************
:撤换
对于%%f in(“%tmp%\*.pdf”)执行以下操作(
移动“%%f”“%Destination%\”>nul 2>&1
)
后藤:eof
::************************************************************************
在ForFiles中,双引号将被视为特殊字符,因此应替换为十六进制等效的0x22,而不是用反斜杠转义
FORFILES/P“%source%”/M*.txt/C“CMD/C START 0x220x22 0x22%pdf%0x22/cv@PATH”
你为什么不使用普通的命令呢?@Squashman当我使用普通的命令时,问题是NitoPDF.exe
不关闭使用FORFILES
和CMD.exe
对性能有很大影响。无论如何,使用FOR
不应阻止PDF
关闭。@Squashman看看我上一个编辑问题!当使用baseFOR
命令时,您是否尝试过使用cmd/c“%NitroPDF%”/cv“%%a”
或start”“%NitroPDF%”/cv“%%a”执行NitroPDF
奇怪,因为Dave使用反斜杠来转义双引号,从而发布了相同问题的解决方案。我得到了与我之前发布的相同的错误,我们也可以使用反斜杠****进行ecape,但我不知道我的问题出在哪里,虽然这应该不会有什么区别,但我已经更新了代码以包含start命令。请随意试用。@Compo/Q为什么??当我运行它时,我得到了“/Q”n?est pas侦察命令内部或外部,联合国程序可删除或命令无效现在它像一个符咒一样工作5/5谢谢@Compo,问题解决了:)