Articles of cmd

当服务已经在使用Windows批处理脚本运行时,Windows服务无法启动

我正在写一个Windows批处理脚本,将安装服务。 如果它已经运行,那么我正在停止并删除服务,然后再次安装服务。 我正面临一个奇特的行为。 当服务已经运行,并且当我正在运行下面的batch file时,该服务再次被安装,但它无法启动。 当我重新启动系统,并启动服务,它开始。 如何解决此启动服务问题,而无需重新启动计算机。 我还join了taskkill / f / PID来杀死进程libertyserver.exe。 这是我的代码:test.bat。 我从命令行运行test.bat。 test.bat的: @echo off setlocal @echo off set JAVA_SERVICE_EXE=libertyserver.exe … …. set SERVICE_DISPLAY_NAME="%LIBERTY_SERVICE_NAME%" set SERVICE_DESCRIPTION="%LIBERTY_SERVICE_NAME%" echo Stopping and Deleting existing services for /F "tokens=3 delims=: " %%H in ('sc query %SERVICE_NAME% ^| findstr "STATE" ') do ( if /I "%%H" EQU "RUNNING" […]

CMDshell中的可用空间

有没有办法在CMD中获得磁盘或文件夹的可用磁盘空间量,而无需安装某些第三方应用程序? 我有一个CMD,将一个大文件复制到一个给定的目录,当然可以使用复制命令的错误级别返回,但是我必须等待复制文件所需的时间(例如…然后磁盘已满并且复制操作失败)。 如果有任何想法,我想在开始之前知道。 从Sysinternals试用DU.EXE实用程序,但只显示占用的空间。

如何在命令行中禁用Hyper-V?

我试图打开VMware,它说,VMware播放器和Hyper-V不兼容。 我发现它在这里 ,但它不能使用它提供的命令。 我试图看到帮助,发现那里有/hypervisorsettings选项。 但仍然不能用,它说The parameter is incorrect 。 有人能帮忙吗?

如果使用&&或||,命令成功完成,X> = 1的`EXIT / BX`退出批处理 批量调用之间的运算符

我试图链接一系列.bat文件使用EXIT /BX命令返回成功或失败和&&和|| 有条件地运行下一个.bat(例如a.bat && b.bat )。 无论我是否调用EXIT /B 0或其他结束a.bat, a.bat && b.bat都会在之后调用b.bat。 我的理解是, EXIT /B 0应该设置ERRORLEVEL=0 ,这是成功的,所以&&应该继续。 与此相对应的是,调用EXIT /B 1 ERRORLEVEL=1应该设置ERRORLEVEL=1 ,这是失败的,所以&&应该停止。 我在这里错过了什么? 普通的例子: 对于非批处理命令,按预期行事 C:\>echo test|findstr test>NUL && echo yes yes C:\>echo test|findstr test>NUL || echo yes C:\>echo test|findstr nope>NUL && echo yes C:\>echo test|findstr nope>NUL || echo yes yes C:\> 使用EXIT / B总是看到a.bat成功 […]

并行工作的CMD实例的信号量

我有.bat这将开始X次(不同的论点)在同一时间。 我希望他们修改一个特定的文件,但必须按照可控的延迟顺序进行。 理想情况下,我需要一种机制,只允许一只蝙蝠locking文件,并在需要时进行处理,而不是释放它,以允许另一个进程执行相同的操作。

无法在Windows命令提示符(cmd.exe)中redirect输出消息

我试图在Windows命令提示符下运行以下命令。 abc.exe >log.txt 2>&1 我期望从abc.exe所有输出被定向到log.txt ,但它不起作用,因为log.txt是空的。 但是,如果我只是执行abc.exe ,输出显示在Windows命令提示符下。 我不知道该应用程序(STDOUT或STDERR)使用的输出处理程序是什么,但是我想知道是否有办法捕获所有消息,而不pipe处理程序。

在Windows shell脚本(cmd.exe)中,如何将程序的标准输出分配给环境variables?

在UNIX中,您可以使用此处解释的技术将脚本的输出分配给环境variables – 但Windows的等效项是什么? 我有一个Python实用程序,旨在纠正一个环境variables。 这个脚本只是写一个字符序列到标准输出。 对于这个问题,我的实用程序是用python编写的这个事实是无关的,它只是一个程序,我可以从命令提示符输出一行文本。 我想要做这样的事情(工作): set WORKSPACE=[ the output of my_util.py ] 运行此命令后,WORKSPACE环境variables的值应包含与我的实用程序通常会打印出的完全相同的文本。 可以这样做吗? 怎么样? 更新1:有人在工作build议: python util.py | set /P WORKSPACE= 从理论上讲,这将把python脚本的stdout分配给env-var WORKSPACE,但是它不起作用,这里出了什么问题?

在Windows CMD文件中,回显后面紧跟着一个斜杠?

当检查这个Windows批处理/ CMD文件(来自Chocolatey源的RefreshEnv.cmd )时,我碰到以下代码行: echo/@echo off >"%TEMP%\_env.cmd" 上面创build文件_env.cmd与内容“@echo off”。 斜杠在“echo /”中做了什么? 如果我省略了斜线,结果文件完全一样。 我在Windows 7上。

Windowsbatch file – 用string作为分隔符分割string

我试图在batch file中使用string(而不是字符)作为分隔符来分割string。 该string的格式为: string1 by string2.txt 分隔符是(是的,空格,单词“by”,后面是空格)。 我想要的输出是: string1 string2 所以,基本上,通过分隔符将string拆分成2个部分by并从第二个string中删除后缀。 我怎样才能做到这一点?

batch file进展纺车

我一直在努力几天,似乎可以得到这个工作。 我find一个例子,但它使用(CryEcho),这将无法正常工作。 我只是想添加这个让用户知道正在进行的事情正在执行IP地址。 我在这里find了一些代码,但是这让我感到困惑,因为我只是为了好玩而乱开batch file。 无论如何,我想有一些东西,像下面的例子,但像(等待… [微调])的文字。 谢谢! @echo off setlocal set COUNT=0 set MAXCOUNT=10 set SECONDS=1 :LOOP title "\" call :WAIT title "|" call :WAIT title "/" call :WAIT title "-" if /i "%COUNT%" equ "%MAXCOUNT%" goto :EXIT set /a count+=1 echo %COUNT% goto :LOOP :WAIT ping -n %SECONDS% 127.0.0.1 > nul ping -n […]