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
Batch file 在带有参数的单个命令中合并多个命令_Batch File_Terminal_Command - Fatal编程技术网

Batch file 在带有参数的单个命令中合并多个命令

Batch file 在带有参数的单个命令中合并多个命令,batch-file,terminal,command,Batch File,Terminal,Command,这个问题是另一个问题 在我的例子中,命令有一个参数。例如,假设我使用texlive处理sample.tex,分别生成dvi、ps和pdf。命令将被删除 latex sample.tex bibtex sample.aux latex samlpe.tex dvips sample.dvi ps2pdf sample.ps 我是否可以将它们合并到一个脚本文件中,以便无论何时输入 makepdf sample.tex 上面所有的命令都是按顺序执行的,所以我得到了一个pdf 此文件是makepd

这个问题是另一个问题

在我的例子中,命令有一个参数。例如,假设我使用texlive处理sample.tex,分别生成dvi、ps和pdf。命令将被删除

latex sample.tex
bibtex sample.aux
latex samlpe.tex
dvips sample.dvi
ps2pdf sample.ps 
我是否可以将它们合并到一个脚本文件中,以便无论何时输入

makepdf sample.tex

上面所有的命令都是按顺序执行的,所以我得到了一个pdf

此文件是
makepdf.bat

@echo off
latex %1
bibtex %~N1.aux
latex %1
dvips %~N1.dvi
ps2pdf %~N1.ps 
按照您之前所说的执行:

makepdf sample.tex

这与aacini的代码相同,但也支持长文件名元素

@echo off
latex  "%~1"
bibtex "%~n1.aux"
latex  "%~1"
dvips  "%~n1.dvi"
ps2pdf "%~n1.ps"

如果任何命令是批处理文件,则在命令名之前添加一个
call
关键字。

谢谢,但这不起作用。当我使用这组命令时,终端会显示“进入扩展模式”,并在那里冻结。但是如果我用实际的文件名替换参数,效果会很好。你能给我指一些解释这些论点的参考资料吗?