Tag: batch file

如何从批处理脚本中运行批处理脚本?

如何从批处理脚本中调用另一批处理脚本? 我希望它在if语句中执行。

批处理脚本删除文件

我有一个批处理脚本如下。 D: del "D:\TEST\TEST1\Archive\*.TSV" del "D:\TEST\TEST1\Archive\*.TXT" del "D:\TEST\TEST2\Archive\*.TSV" del "D:\TEST\TEST2\Archive\*.TXT" del "D:\TEST\TEST 100%\Archive\*.TSV" del "D:\TEST\TEST 100%\Archive\*.TXT" 上述代码删除文件夹TEST 100%以外的所有文件夹中的所有“.txt”和“.tsv”文件。 对于从TEST 100%删除文件,我得到错误作为The Path could not be found 。 我猜文件夹名称中的%符号会造成问题。 任何人都可以指导我解决问题,并从文件夹TEST 100%删除文件?

如何检查“.bat”文件中的命令行参数?

我的操作系统是Windows Vista。 我需要一个“.bat”文件,我需要检查用户是否input任何命令行参数。 如果那么如果参数等于-b那么我会做一些事情,否则我会标记“无效的input”。 如果用户没有input任何命令行参数,那么我会做一些事情。 我创build了以下.bat文件。 它适用于-b和不等于-b情况,但在用户不传递任何命令行参数时失败。 我总是得到错误: GOTO was unexpected at this time. 谁能告诉我我在这里做错了什么? ECHO OFF CLS ECHO. IF [%1]==[/?] GOTO BLANK IF %1=="-b" GOTO SPECIFIC IF NOT %1=="-b" GOTO UNKNOWN :SPECIFIC ECHO SPECIFIC GOTO DONE :BLANK ECHO No Parameter GOTO DONE :UNKNOWN ECHO Unknown Option GOTO DONE :DONE ECHO Done!

如何从Windowsbatch file中testing%PATH%中是否存在可执行文件?

我正在寻找一种简单的方法来testing一个可执行文件是否存在于Windowsbatch file的PATH环境variables中。 不允许使用操作系统不提供的外部工具。 所需的最小Windows版本是Windows XP。

我怎样才能debugging.BAT脚本?

有没有办法通过.bat脚本? 事情是,我有一个构build脚本,它调用了很多其他脚本,我想看看它们被调用的顺序是什么,以便我可以知道我到底要去哪里并添加我的修改。

batch file包含variables的外部文件

我有一个batch file,我想包括包含一些variables(比如configurationvariables)的外部文件。 可能吗?

如何在调用batch file时检查是否定义了一个参数?

我试图在batch file中使用以下validation逻辑,但即使没有参数提供给batch file,“使用情况”块也不会执行。 if ("%1"=="") goto usage @echo This should not execute @echo Done. goto :eof :usage @echo Usage: %0 <EnvironmentName> exit 1 我究竟做错了什么?

复制文件而不覆盖

我似乎无法在命令行上find一种方法来说“将所有文件从目录A复制到目录B,但是如果目录B中已经存在该文件,请不要覆盖它,不pipe哪个文件更新,不要提示我。“ 我已经通过复制,移动,xcopy和robocopy,而且我能得到的最接近的是,你可以告诉robocopy“复制A到B,但不要用较旧的文件覆盖较新的文件”,但这对我不起作用。 我查看了xxcopy,但放弃了它,因为我不想在Visual Studio后构build事件上有第三方依赖关系,这将需要其他SVN用户安装该工具才能进行构build。 我想将一个命令行添加到Visual Studio 2010中的生成后事件中,以便从新的EF模型对象的T4模板生成的文件被分发到它们所属的项目文件夹,但为现有对象生成了重新生成的文件不要覆盖潜在编辑的目标文件。 由于T4模板重新生成,源文件总是更新,我不能可靠地使用“更新”的开关,我不这么认为。 我使用部分类为我可以,但也有我不能使用部分类(例如生成一个默认的EditorTemplate或DisplayTemplate * .ascx文件)生成的其他事情。 任何人有任何类似的问题,他们已经解决了?

在Windows.cmd文件或batch file中的path中使用空格设置pathvariables

我是新手脚本写作,不能让这个工作。 我可以,如果我把文件移动到一个没有空间的path,但我希望它可以与空间一起工作。 我想将一堆Office更新提取到.cmd文件的文件夹中。 为了使batch file可以在任何计算机上使用,我设置了一个pathvariables,我只需要在一个地方更改它就可以在另一台机器上运行。 问题是path中有一个空间。 如果我在定义的path中加上引号,则cmd.exe会在它附加文件名和开关之前将它们放在path中,并且批处理失败,并显示“命令行语法错误”。 如果没有引号,则失败,“不被识别为内部或外部命令,可操作程序或batch file”。 为了testing,我正在使用帮助开关,直到或者如果我能得到它的工作。 我可以使用8.3文件/文件夹名称(例如我的文档MyDocu〜1)来做到这一点,但它可以做一个不同的方式吗?

如何复制一个目录结构,但只包含某些文件(使用Windowsbatch file)

正如标题所说,我如何recursion复制一个目录结构,但只包含一些文件。 例如给出以下目录结构: folder1 folder2 folder3 data.zip info.txt abc.xyz folder4 folder5 data.zip somefile.exe someotherfile.dll 文件data.zip和info.txt可以出现在目录结构中的任何地方。 如何复制完整的目录结构,但只包含名为data.zip和info.txt的文件(应忽略​​所有其他文件)? 生成的目录结构应如下所示: copy_of_folder1 folder2 folder3 data.zip info.txt folder4 folder5 data.zip