草庐IT

windows - 用于替换多个文件中特定字符串的批处理脚本

我对批处理脚本没有太多经验,我的雇主要求我编写一个可以运行的批处理脚本来查找和替换目录中所有匹配文件中的一些文本。我已经尝试搜索这个并且有大量的资源,我已经用它来让我走到这一步:@echooffsetlocalenableextensionsdisabledelayedexpansionset"search=0"set"replace="set"textFile=TimeTEQ20170103T085714L.XML"for/f"delims="%%iin('type"%textFile%"^&break^>"%textFile%"')do(set"line=%%i"setlocale

windows - 批处理脚本 - 如果尚未设置/定义,则设置/定义环境变量

我需要一个批处理脚本来调用SetEnvironmentVariableIfNotSet.batenvironment_variable_name来自另一个脚本或命令行。我绝不是Windows批处理脚本方面的专家,但通过反复试验并将不同的东西拼凑在一起,到目前为止我已经想出了这个:@setlocalEnableDelayedExpansion@if"!%1!"==""(echo'%1'undefined.Definingwithvalueecho%2endlocalDisableDelayedExpansiongoto:define_variable)else(echo'%1'alrea

windows - 将 CMD 标题改回原来的样子(批处理)

我正在尝试让我的批处理脚本更改命令提示符的标题,以改回脚本启动前的标题。这是一个例子:@echoofftitleMyScriptREMrestofscripthere:endtitle%origcmdtitle%所以在它运行之前,它会有它的默认标题;类似于命令提示符或C:\Windows\system32\cmd.exe然后,当我的脚本运行时,标题变为MyScript最后,当脚本结束时,我想让它变回CMD的原始标题(它只是保持为MyScript)谢谢! 最佳答案 这一直是编写批处理代码的众多棘手问题之一。我看到一些相当复杂的代码试图

windows - 在更改为cmd后的powershell中无法通过批处理脚本文件调用bat文件

我创建了一个bat文件来设置我的工作区,方法是将目录更改为工作区目录并调用setupEnv.bat文件。但是当我在PowerShell中执行下面的bat文件时,cmd之后的指令没有执行。我需要在cmd中调用setupEnv.bat文件。如果我删除cmd它将正常工作。但我想在cmd上调用setupEnv.bat,而不是在PowerShell中。D:cdD:\WorkSpace\cmdcallsetupEnv.batecho"SetupCompleted"在调用setupEnv.bat和调用cmd后,它会保留PowerShell中设置的所有环境变量吗? 最佳答案

windows - 如何将特定文件从多个子文件夹移动到它们各自的父文件夹? (Windows 批处理)

我有以下文件和文件夹结构(使用真实姓名):Carabidae/Pterostichinae/FolderNameXXX/dor/StackXXX/files.tif我的问题是我需要将StackXXX文件夹中的一个特定文件PM*.*放入它们各自的/dor父文件夹中。然后可以删除StackXXX文件夹。FolderName有数百个。理想情况下,我想要一个可以从Carabidae文件夹运行的批处理文件。这需要是一个批处理文件,因为会不断添加新的FolderNames。经过大量搜索,我从thisStackOverflowanswer找到了一个半可行的解决方案:for/f"delims=="%%

java - 批处理 - 确定是否安装了 java

首先要说的是,我对批处理脚本一点经验都没有。如标题所示,我试图从一个bat文件中找出系统上是否安装了java。我已经检查了很多方法来做到这一点,但其中大多数似乎比完成这项工作应该采取的方法更复杂。到目前为止,我的想法是将java-version的结果保存到一个变量中,然后检查是否确实有结果,或者命令java是否不能'找不到。可悲的是,我什至不知道如何将java-version的输出保存到一个变量中,以便我可以比较它。如果有人可以帮助我解决我的想法或对我的问题有不同的简单解决方案,我会很高兴你能帮助我。谢谢。 最佳答案 试试这个:wh

windows - 在批处理脚本中获取文件夹的创建日期和时间

我正在尝试获取Windows中特定文件夹的创建日期和时间。基于此answer,我尝试了以下方法:@echooffsetpath_of_folder="C:\folderA\folderB\"ifexist%path_of_folder%(echoPathexists.for/f"skip=5tokens=1,2delims="%%ain('dir/a-d/tc%path_of_folder%')doset"dt=%%a"echoCreatedon:%%a,%%b))else(echoPathdoesnotexist.)pause我在哪里得到这个输出:Pathexists.Created

windows - Windows 批处理参数没有 "short"替换

我想遍历一个文件夹并检查其子文件夹中是否存在某些文件。其中一些子文件夹可能有大括号,所以我使用了批处理参数的短名称替换(参见call/?):@echoofffor/D%%Din(*.*)do(call:showFile"%%D\nbproject\project.properties")pausegoto:eof:showFileechoF:%1echoS:%~sdp1%~nx1goto:eof这种方法适用于我们的大多数系统(所有Windows7专业版)。在"new"笔记本电脑上,这将停止工作。“S:”行显示完整的“真实”路径,而不是短路径。由于文件夹名称中的额外大括号,原始批处理文件

windows - 批处理脚本 - 循环中的动态/变量路径

我的要求是编写一个批处理脚本来查找和替换给定目录集中所有*-spec.js文件中的字符串。因此,我编写了批处理文件并运行批处理脚本,如下所示。(我确定folder_path_n不会超过7)例如C:\CI\Scripts>replace.bathelloworldC:\app\e2eC:\sppa\e2e所以我的脚本如下。@echooffsetlocalenabledelayedexpansionsetargCount=0for%%xin(%*)do(set/AargCount+=1set"argVec[!argCount!]=%%~x")setsearch=%1setreplace=%

excel - 从Windows批处理脚本以安全模式启动Excel文件,使用默认文件关联

问题摘要:我可以在安全模式下从Windows批处理脚本启动Excel文件installer.xlsm,而不提供Excel.exe安装路径吗?细节我有一个windows批处理脚本,它可以从远程服务器下载一系列excel加载项的最新版本,将它们放在一个目录(c:\appname\addins)中,并调用excel文件installer.xlsm。加载时,installer.xlsm执行VBA宏,该宏卸载旧版本的加载项并安装其新版本。当前,我使用以下命令启动installer.xlsm:start"Launchinginstallerfile"/wait"\Installer.xlsm"它的