Articles of batch file

recursion查找和replace文件

我想要做的是以下。 我想创build一些bat文件,它将从当前目录开始recursionsearch文件,并replace为我提供的文件。 例如。 如果我想search并replacetest1.txt,我打开这个小应用程序,并写入text1.txt,并放置我想要replace的文件。 迪尔 app.bat test1.txt // app将recursionsearch文件夹1和文件夹2,并将用test1.txtreplace所有find的结果 文件夹1 文件夹2 我想知道,如果有准备去应用程序或bat文件出于这个原因?

bat文件脚本来检查string是否包含其他string

我需要写一个batch file来检查variables是否包含特定的值。 我试图做到以下几点: If "%%a"=="%%a:%pattern%" ( echo Yes ) else ( echo No ) input示例:%% a =“bob binson”%patern%=“binson” 我从来没有得到印! 任何人都可以请告诉我错过了什么,或者给出一个他将如何做的例子? 提前致谢

在“if”块中设置variables

下面的程序最后总是回应“machine-abc”: @echo Off set dropLoc=machine-abc IF %computername% == "xyz" ( %dropLoc% = machine-xyz ) echo %dropLoc% 这是一个范围问题? if语句中的dropLocvariables是否有不同的作用域? 我已经尝试了以下来解决这个问题: @echo Off set dropLoc=machine-abc IF %computername% == "xyz" ( !dropLoc! = machine-xyz ) echo %dropLoc% 和 @echo Off set dropLoc=machine-abc IF %computername% == "xyz" ( set dropLoc = machine-xyz ) echo %dropLoc% 我该如何做这项工作?

在Windowsbatch file中寻找Unix风格的“getopt”命令行parsing

任何人都可以帮助我find一些parsingWindowsbatch file中的命令行参数,就像在Unix shell脚本中使用getopt / getopts一样? 它不一定都是Posix-y; 只是我可以指定我期望的开关,哪些需要/允许参数。 他们不需要是“长”的开关; 单个字符将工作。 它可以是batch file调用的外部.exe文件。 它必须是免费分发的。

batch file从文本文件中总结数字,并将总值写入文本文件

我在文件夹1中有300个文本文件,在文件夹2中有300个文本文件 下面是一个文本文件的示例内容 india,car,10 uk,car,20 us,car,50 我想总结第三列,并将其写入相同的文本文件。 例, for /f "tokens=3 delims=," %%a in (folder1\textfile1.txt) do set /a total+=%%a echo %total% >folder1\textfile1.txt 上面的代码将在textfile1.txt中写入80 请告诉如何使用batch file对所有300个文本文件执行相同操作。

用putty在批处理中input第二个用户名和密码

我想知道如何在初始login成功后在腻子中自动input用户名和密码。 我有一个bat文件connect.bat @echo off putty [user]@[host] -pw [password] 运行这个之后,它打开一个新的腻子窗口并validationlogin。 如果成功,我不会redirect到shell,而是redirect到另一个login屏幕。 下面的示例。 然后,我需要通过input以下内容手动input不同的用户名和密码。 [username] [ENTER KEY] [password] [ENTER KEY] 最后redirect到主机的菜单。 我尝试了以下内容: echo [username] & [password] | putty [user]@[host] -pw [password] putty [user]@[host] -pw [password] < user_pass.txt putty [user]@[host] -pw [password] -m user_pass.txt 但失败了,有没有办法通过批处理/ PowerShell脚本来执行此操作,还是应该合并另一个应用程序?

检查命令是否在CMD内部

我有一个命令的名字,我需要检查这个命令是否是内部的。 我怎样才能在批处理脚本?

如何迭代所有的registry项?

我正在尝试遍历所有的registry项以便查找(包含)并删除jre1.5.0_14值。 有没有办法做到这一点? 下面的代码只是在特定的键下findjre1.5.0_14! 我想要迭代所有的键。 顺便说一下,如果子句得到,如果它等于jre1.5.0_14,但它应该是如果它包含jre1.5.0_14。 提前致谢。 最好的祝福。 @echo off setlocal set KEY_NAME="HKEY_CURRENT_USER\Software\Microsoft\Notepad" set VALUE_NAME=jre1.5.0_14 FOR /F "skip=2 tokens=3" %%A IN ('REG QUERY %KEY_NAME%') DO if "%%A"=="%VALUE_NAME%" ( @echo %%A )

循环中的Windows批处理string操作

我试图在当前目录中创build目录“01”,“02”,“03”,…,“11”和“12”。 但是由于一个未知的原因,我的填充“0”的函数在for循环中不起作用。 @Echo on SET suffix=12 SET v=0%suffix% SET v=%v:~-2% echo %v% pause (SET suffix=12 SET v=0%suffix% SET v=%v:~-2% echo %v%) pause FOR /L %%q IN (9,1,11) DO ( SET suffixb=%%q SET w=0%suffixb% SET w=%w:~-2% echo %w% ) pause

批文件文件夹检测

是的,我知道在batch file中使用时,需要将%a加倍为%% a。 ;) 这有效,但不给我我想要的结果 – 这太多了.. FOR /f %a IN ('dir "D:\tomcat*" /ad /b ') DO FOR /f %b IN ('dir "D:\%a\webapps" /ad /b ') DO ECHO D:\%a\webapps\%b 我真正想做的是: FOR /f %a IN ('dir "D:\tomcat*\webapps" /ad /b ') DO ECHO %a 但是,我得到了由此产生的错误: 文件名,目录名称或卷标语法不正确。 我想这样做,因为我需要检测哪些文件夹中有tomcat,可能是以下任何一种: D:\tomcat D:\tomcat1 D:\tomcat2 D:\tomcat_1 etc. 谢谢!