Articles of batch file

shutdown.exe参数用破折号或斜杠?

我使用了shutdown.exe来重新启动安装了不同版本Windows的机器。 对于Windows XP,命令是: shutdown.exe -r -f -t 01 对于我使用的其他版本的Windows: shutdown.exe /L /R /C /Y /T:1 现在看来,第二个命令不能在Windows XP上运行。 有谁知道哪个版本的Windows支持斜杠和哪个破折号? 编辑: 这不是一个错误的参数问题。 以下是受影响的机器的打印输出(德语安装的Windows XP): Microsoft Windows XP [Version 5.1.2600] (C) Copyright 1985-2001 Microsoft Corp. C:\shutdown.exe /L /R /C /Y /T:1 Syntax: shutdown.exe [-l | -s | -r | -a] [-f] [-m \\Computer] [-t xx] [-c "Kommentar"] [-d […]

如何将双引号string与embedded空格拆分batch file中的空格?

我正在努力改进脚本,我build议作为答案如何编写一个batch file,显示在Windows上处理Python脚本的可执行文件和版本的Pythonpath? 题。 为了防止打开方式对话框,我想读取ftype命令的输出,从中提取一个可执行文件的path,并检查它是否存在。 在这之后 @echo off setlocal EnableDelayedExpansion rem c:\ftype Python.File -> rem Python.File="c:\path with spaces, (parentheses) and % signs\python.exe" "%1" %* for /f "tokens=2 delims==" %%i in ('ftype Python.File') do ( set "reg_entry=%%i" ) reg_entry's内容是 "c:\path with spaces and (parentheses) and % signs\python.exe" "%1" %* 我如何分割这个以得到"c:\path with spaces, (parentheses) and % signs\python.exe" , […]

registry值与报价

我需要在batch file中插入一个值到registry中。 该值包含引号,这使得它很难插入。 set OPENCOMMAND="\"%JAVAHOME%\bin\javaw.exe\" -jar \"%%1\" %%*\"" reg add "HKEY_LOCAL_MACHINE\SOFTWARE\Classes\jarfile\shell\open\command" /v "" /t REG_SZ /d %OPENCOMMAND% 这个结果几乎是正确的结果,除了值包含在reqistry周围的引号。 "C:\Program Files\Java\jre7\bin\javaw.exe" -jar "%1" %*" 这就是registry包含的内容以及它应包含的内容 C:\Program Files\Java\jre7\bin\javaw.exe" -jar "%1" %* 该怎么办?

Shell脚本阅读Windowsregistry

我需要一些小的shell脚本的帮助,它应该从Windowsregistry中读取nvidia驱动程序版本。 基本上,Windows命令(在dos提示符下工作正常)如下: REG QUERY "HKLM\SOFTWARE\NVIDIA Corporation\Installer" /v Version 所以自然,我尝试从shell脚本运行它: CMD //C 'REG QUERY "HKLM\SOFTWARE\NVIDIA Corporation\Installer" /v Version' 但是它说密钥名是无效的。 我的猜测是双引号被误解了(最可能是因为错误的语法)。 我已经尝试了几个东西,比如在批处理脚本中input这段代码,并从shell执行批处理。 发生同样的问题。 有人可以帮忙吗? 提前致谢! 拍

无法将用户input值回显到批处理脚本中的文件

我正在写一个batch file,它将根据多个用户input值生成/写入属性文件。 但是,它不logginginput的值。 结果看起来像 prop1= prop2= 我想知道是否有什么我需要知道设置,防止这个工作。 奇怪的是,如果我多次运行这个特定的脚本,从echo输出的值似乎始终是上次用户input。 码: @echo off IF NOT EXIST data_file ( set /p prop1=Enter value: set /p prop2=Enter value: (echo prop1=%prop1%) > data_file (echo prop2=%prop2%) >> data_file )

批处理 – 将variables的命令输出分配给variables

我正在寻找方式将命令的输出分配给一个批处理variables,但该命令在内部使用另一个variables。 当我使用分配命令输出到batch file中的variables中指定的解决scheme 我得到的错误,在这个命令里面的variables不是预期的。 请帮忙

如何在BATCH脚本中随机使用?

如何在BATCH脚本中随机使用?

使用cmd.exe将长文件名转换为短文件名(8.3)

我试图在Windows上将长文件名转换为短文件名(8.3)。 具有命令行参数的batch file按预期工作: short.bat : @echo OFF echo %~s1 调用short.bat C:\Documents and Settings\User\NTUSER.DAT返回C:\DOCUM~1\USER\NTUSER.DAT 不过,我不喜欢为此添加一个额外的.bat文件。 我宁愿用来自ruby脚本的整个命令调用cmd.exe 。 我怎样才能做到这一点? 作为一个中间步骤,我尝试在batch file中硬编码path,但这不起作用: short1.bat : @echo OFF SET filename="C:\Documents and Settings\User\NTUSER.DAT" echo %filename% echo %~sfilename% echo %filename%工作,但echo %~sfilename%给出了以下错误: The following usage of the path operator in batch-parameter substitution is invalid: %~sfilename% For valid formats type CALL /? or FOR […]

使用Windowsbatch file更改XML文件中的标签数据

我有一个XML文件中有几个标签,我正在尝试用批处理脚本来更改其中一个标签的内容。 xml文件的一个例子是: <ConfigurationData> <ReportsFolder>\Reports</ReportsFolder> <Helpfolder>\Help</HelpFolder> <InstallationType>Terminal</InstallationType> <LicenseFolder>..\License</LicenseFolder> </ConfigurationData> 我试图改变<InstallationType>和</InstallationType>之间的数据到我select的另一个variables。 我想我会需要某种For循环findXML文件的一部分,但我失去了如何编辑只是一个部分。

使用.bat文件检查文件夹是否存在

我想能够检查某个文件夹(FolderA)是否存在,如果是,则显示消息,然后退出batch file。 如果FolderA不存在,那么我想检查是否存在另一个文件夹(FolderB)。 如果FolderB不存在,则应显示消息并创build文件夹,如果FolderB确实存在,则应显示消息。 有没有人有任何想法的代码,我可以简单地使用记事本创build一个batch file,让我这样做? 所有这些都需要在一个.bat文件中完成。