草庐IT

windows - 使用 Windows 批处理命令追加到文件时,如何在文件中的下一个单词之后立即追加?

当使用Windows批处理命令追加到文件时,如何在文件中的下一个单词之后立即追加?比如这些命令echohereisthedateof>c:\arun.txtdate/t>>c:\arun.txt将以下文本写入arun.txt文件:hereisthedateof29-03-2010但我希望输出是这样的:hereisthedateof29-03-2010如何在追加时避免回车? 最佳答案 echo输出始终包含尾随换行符。要输出没有尾随换行符的文本,您可以使用描述的set/p技巧here和here:c:\arun.txtdate/t>>c:

windows - 从批处理脚本获取父目录的父目录

我的脚本位于:C:\A\B\test.bat在脚本中,我通过命令获取脚本的父目录:parent_dir=~dp0=>我得到了:C:\A\B那么如何获取父目录的父目录:C:\A并设置为变量 最佳答案 FOR%%aIN("%parent:~0,-1%")DOSETgrandparent=%%~dpa回复评论的完整代码@ECHOOFFsetlocalSETparent=%~dp0ECHOparent=%parent%FOR%%aIN("%parent:~0,-1%")DOSETgrandparent=%%~dpaECHOgrandpare

Windows 批处理脚本 - 将文件名读入变量

我正在尝试一个一个地转换目录中的文件(电影)。每个新的、转换后的文件都需要分配一个新的文件名-旧文件有一个新的扩展名。我试过下面的方法来读取源文件,去掉扩展名并分配一个新的:@echooffsetlocalDisableDelayedExpansioncd\target_dirfor%%xin(*)do(echo%%xsetsource=%%xechoSource#%source%#settarget=%source:.mpg=%echoTarget#%target%#transcode%source%%target%.mp4)不幸的是,这是行不通的。如输出所示,我什至没有设法将当前文

windows - 如何在 Windows 批处理脚本中获取可选的命令行参数值作为字符串?

给定一个可选的端口参数,其中端口号的长度可以变化,我如何从批处理脚本的命令行参数中获取端口号?例子:foo.bat--foobar--port80--barfoo应该输出:80我走到这一步,尝试使用子字符串。setCMD_LINE_ARGS=%*@remRemoveallcharsandportargsetPORT_ARG_REMOVED=%CMD_LINE_ARGS:*-port=%@remObviously,thisiswhereIfailtoremovetrailingcharssetPORT_NUM=%PORT_ARG_REMOVED:*=%echo%PORT_NUM%编辑我选

Windows批处理脚本来查看一系列服务器/端口是否打开?

我可以运行一条命令来查看端口是否打开:portqry-nservername-e80我想针对服务器列表运行它:开发人员180开发人员280DEV380测试180测试280生产80我想使用一个Windows批处理脚本来测试它们,看看哪些端口是打开的,哪些是关闭的。(而且我不希望它在第一个关闭的端口上掉下来)。我的问题是:是否有Windows批处理脚本来查看一系列服务器/端口是否打开?附加:我知道还有其他问题询问如何检查端口是否打开。它们都不是关于以可靠的方式为一系列端口编写脚本。 最佳答案 给你。向前支付。:)要直接回答您的问题,只需

windows - 批处理脚本 : Validate Date Input

我有一个批处理文件,用于为客户创建新的项目文件夹,引导用户完成创建过程并将适当的文件和文件夹添加到中央位置。我需要添加一个输入部分,以便他们可以输入日期(不一定是当前日期),并且它包含在文件的命名中。我遇到的问题是,我需要对日期输入进行虚拟证明,而且我一直在寻找答案,但找不到答案。我希望用户以MM-DD-YYYY格式输入日期,包括破折号。然后需要将其格式化为YYYY-MM-DD。它需要足够聪明,强制用户使用所需的格式MM-DD-YYYY;必须是数字和破折号、没有斜线、正确数量的字符等等。我无法找到任何接近甚至远程让我到达我需要去的地方的东西,所以我在这方面向那些了不起的天才寻求帮助,因

windows - 批处理脚本 - 'If Statements' 中的通配符

我正在编写一个批处理脚本,其中我需要在if语句中使用通配符来将变量与字符串匹配。如果匹配,程序将走得更远。if"!_var!"=="str*"(--SOMECOMMANDS--)这是我用过的语法,但我发现它根本行不通。 最佳答案 echo%var%|findstr/b"str">nul&&(echoyessomemorecommands)||(echonosomemorecommands)寻找(/b=开头的)str,(不写入屏幕>nul),如果找到(&&)做某事,如果找不到(||)做另一件事。您还可以添加/i使其不区分大小写。

windows - 你如何检查环境变量是否在 Windows 批处理脚本中定义

关闭。这个问题是notreproducibleorwascausedbytypos.它目前不接受答案。这个问题是由于错别字或无法再重现的问题引起的。虽然类似的问题可能是on-topic在这里,这个问题的解决方式不太可能帮助future的读者。关闭5年前。Improvethisquestion我正在尝试创建一个批处理文件来检查环境变量是已定义还是未定义,如果是,则给出特定的输出语句。这就是我所拥有的,我似乎无法让程序告诉我任何参数都已定义。ifnotdefined"%MyVar%"(echoMyVarisNOTdefined)ifdefined"%MyVar%"(echoMyVarISd

windows - 在批处理脚本中循环遍历文件名

我想要一个文件夹中所有文本文档的批处理脚本。这是我到目前为止所管理的:@ECHOofftitleTestsetdir1=C:\Users\Family\Desktop\Example:Startclsecho1.testloopecho2.Quitset/pchoice=Ichoose(1,2):if%choice%==1gototestif%choice%==2exit:testclsechorunninglooptestFOR%%nin(%dir1%*.txt)DOecho%dir1%\%%nechoDonepause我想要输出的是:runninglooptestC:\Users\

windows - 如何使用 'findstr' 匹配 IP 地址?或者在 Windows 中的任何其他批处理方法

正如标题所说,我想在windows中匹配ip地址和批处理,请问我该怎么做?我看到“findstr”可以匹配正则表达式,如“[0-9]”,但是“findstr”如何匹配它出现一到三次? 最佳答案 因为findstr的正则表达式支持有点……过时了,您通常不能使用在网络上找到的大多数正则表达式。以下匹配四组数字,以点分隔:ipconfig|findstr/r"[0-9][0-9]*\.[0-9][0-9]*\.[0-9][0-9]*\.[0-9][0-9]*"但是,如果您只对地址而不是子网掩码感兴趣,则可能需要使用ipconfig|fin