Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/windows/16.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/batch-file/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/image-processing/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
批量排除*.lyx~文件(windows)_Windows_Batch File_Cmd_Lyx - Fatal编程技术网

批量排除*.lyx~文件(windows)

批量排除*.lyx~文件(windows),windows,batch-file,cmd,lyx,Windows,Batch File,Cmd,Lyx,我刚刚创建了以下批处理文件,将我的所有lyx文档保存为tex文件: cd /d "D:\" :: if the "for"-command is executed from the command line, just use "%" rather than "%%" for /R %%g in (*.lyx) do "C:\Program Files (x86)\LyX 2.1\bin\lyx.exe" --force-overwrite --export pdflatex "%%g" 现在

我刚刚创建了以下批处理文件,将我的所有lyx文档保存为tex文件:

cd /d "D:\"
:: if the "for"-command is executed from the command line, just use "%" rather than "%%"
for /R %%g in (*.lyx) do "C:\Program Files (x86)\LyX 2.1\bin\lyx.exe" --force-overwrite --export pdflatex "%%g"
现在的问题是,批处理使用的不是*.lyx文件,而是*.lyx~文件,据我所知,这些文件是某种备份文件,不包含最新内容

如何修改批处理文件,使其采用*lyx文件而不是*.lyx~文件

任何建议都会大有帮助

最佳:——)


PS:如果我在命令行中键入此代码(不使用批处理),则一切正常。

@Edit1:added
tokens
选项。现在它在带有空格的子曲面中工作

将您的
for
循环修改为:

for /F "tokens=*" %%g in ('dir /b /s *.lyx') do if "%%~xg" equ ".lyx" (
    "C:\Program Files (x86)\LyX 2.1\bin\lyx.exe" --force-overwrite --export pdflatex "%%g"
)
另一个解决办法是使用

至于第三条评论,我认为它同时具有这两种功能,但它在最后使用了.lyx~


要查看批处理文件的输出,只需从
cmd
窗口启动它。

@Edit1:added
tokens
选项。现在它在带有空格的子曲面中工作

将您的
for
循环修改为:

for /F "tokens=*" %%g in ('dir /b /s *.lyx') do if "%%~xg" equ ".lyx" (
    "C:\Program Files (x86)\LyX 2.1\bin\lyx.exe" --force-overwrite --export pdflatex "%%g"
)
另一个解决办法是使用

至于第三条评论,我认为它同时具有这两种功能,但它在最后使用了.lyx~



要查看批处理文件的输出,只需从
cmd
窗口启动它。

您是说它只处理.lyx~文件(不处理.lyx文件)?在我的机器(W7 x64)上,它处理所有这些文件(从批处理和cmdline)。对,生成的tex文件不包含*.lyx文件中的内容,而是包含存储在*.lyx~文件中的内容……为了复制:我创建一个lyx文件,比如说内容为“old”,然后使用批处理创建tex文件,然后将lyx内容更改为“new”然后再次运行批处理。tex文件没有更新,仍然包含“old”,就像lyx~文件所包含的一样……当您只需双引号引用
的设置参数(如
for/R%%g in(“*.lyx”)do
)时,它是否起作用?(可能需要使用
“%%g”
而不是
“%%g”
正文中的
)您是说它只处理.lyx~文件(不处理.lyx文件)?在我的机器(W7 x64)上,它处理所有这些文件(从批处理和cmdline)。对,生成的tex文件不包含*.lyx文件中的内容,而是包含存储在*.lyx~文件中的内容……为了复制:我创建一个lyx文件,比如说内容为“old”,然后使用批处理创建tex文件,然后将lyx内容更改为“new”然后再次运行批处理。tex文件没有更新,仍然包含“old”,就像lyx~文件所包含的一样……当您只需双引号引用
的设置参数(如
for/R%%g in(“*.lyx”)do
)时,它是否起作用?(可能需要使用
“%%g”
而不是
“%%g”
中的
)我根据您的帖子更改了for循环。这就解决了问题!非常感谢你。只有一件事,现在,子文件夹不再包含。是否有一个简单的解决方案可以同时包含子文件夹?即使包含子文件夹的部分仍处于打开状态,我也要这样做吗?对不起,我没有注意整个答案:)。这怎么可能?这就是传递给
dir
/s
标志所做的(应该做的)。您使用的Windows版本是什么?发生了一些奇怪的事情。什么将
dir/b/s*.lyx
输出?我也是。我甚至在XP上试用过,效果很好。嗯,如果您不转换文件,而只是回显它们的名称:
echo“%%g”
,会发生什么?
lyx.exe
在哪里生成输出文件?就在震源旁边?震源旁边,对!使用echo无法看到发生了什么,窗口立即再次关闭…我根据您的帖子更改了for循环。这就解决了问题!非常感谢你。只有一件事,现在,子文件夹不再包含。是否有一个简单的解决方案可以同时包含子文件夹?即使包含子文件夹的部分仍处于打开状态,我也要这样做吗?对不起,我没有注意整个答案:)。这怎么可能?这就是传递给
dir
/s
标志所做的(应该做的)。您使用的Windows版本是什么?发生了一些奇怪的事情。什么将
dir/b/s*.lyx
输出?我也是。我甚至在XP上试用过,效果很好。嗯,如果您不转换文件,而只是回显它们的名称:
echo“%%g”
,会发生什么?
lyx.exe
在哪里生成输出文件?就在震源旁边?震源旁边,对!无法使用echo查看发生了什么,窗口立即再次关闭。。。