如何将参数传递给批处理文件[重复]
Posted
技术标签:
【中文标题】如何将参数传递给批处理文件[重复]【英文标题】:how to pass arguments to a batch file [duplicate] 【发布时间】:2018-03-28 00:22:24 【问题描述】:我有一个批处理文件来解压缩文件,压缩文件的路径和目标文件夹是硬编码的。我想将不同的 zip 文件解压缩到不同的文件夹。我不想一直编辑代码,请有人帮忙。
@echo off
setlocal
cd /d %~dp0
Call :UnZipFile "G:\tett\" "G:\test\test.zip"
pause
exit /b
这是我的批处理文件,这里我给出了源和目标的路径。我想将源和目标作为参数传递来运行这个批处理。提前致谢!
【问题讨论】:
【参考方案1】: Call :UnZipFile "%~1" "%~2"
将调用:unzipfile
例程,将两个参数传递给批处理文件,因此在提示符下,
你的批处理文件 "parameter1" "parameter2"
将接受这两个参数并将它们传递给:unzipfile
例程。
如果参数包含分隔符 line Space
,则参数只需要“引号”%~1
表示“从第一个参数中删除封闭引号(如果存在)。
我让你猜猜%~2
是什么意思...
【讨论】:
它工作正常,但是当我再次运行相同的脚本时,它会提示“文件已经存在”。如果它存在我想替换,我需要添加什么 那将在您未显示的:unzipfile
子例程中。
感谢@Magoo,它工作正常,但是在提取时我还想隐藏复制窗口,有没有办法使用我们的批处理脚本来隐藏它?以上是关于如何将参数传递给批处理文件[重复]的主要内容,如果未能解决你的问题,请参考以下文章