草庐IT

if-cases

全部标签

windows - 使用 "IF"命令创建批处理文件

我创建了一个小批处理文件来帮助人们使用FFMPEG将MP4视频转换为FLV。一种让我认识的每个人都可以轻松使用它的方法。我当时认为我输入的那行代码对每种情况都是完美的(将MP4文件转换为FLV),但几天前,它对文件不起作用。(FLV格式的音频样本为高)我在人们的帮助下找到了另一个代码行来转换它,但我不知道如何将它正确地集成到我的批处理文件中。这是我现在使用的:echo"Enterthenameofthefile,whitouttheextension":set/pnamefile=echo"Enterthenameyouwhattogivetothedestinationfile":s

windows - 批处理文件,vista x64,if 和括号

Windows上的一些批处理文件使用多行IF语法,如下所示:ifvar==rule(somecomands)else(elsecommands)现在,WindowsVistax64决定将所有32位文件放在“C:\ProgramFiles(x86)”下。不幸的是,每当您在不带引号的多行IF内使用环境变量(例如PATH)时,变量值内的括号会混淆IF,从而中止批处理文件。例如:if"%OS%"=="Windows_NT"(@setlocalcall:set_homeset_ARGS=%*)else(set_SCALA_HOME=%SCALA_HOME%remThefollowinglinet

windows - 为什么 @ECHO ON/OFF 在批处理文件 IF block 中不起作用?

@echoon和@echooff在批处理文件中带括号的ifblock中执行时似乎没有任何影响.这是一个简单的演示:@echooffechoTest#1if1==1(@echoonechoTest#2@echooffechoTest#3)@echoonechoTest#4在命令行上运行上面的输出是:Test#1Test#2Test#3C:\mybatchfilelocation>echoTest#4Test#4任何人都可以对此进行解释和/或提出解决方法吗?(预计它可能可以通过大量使用goto和标签来修复,但如果可能的话,我更愿意继续使用括号中的block...)

windows - 批处理脚本 if else 命令

我正在尝试制作一个简单的批处理脚本来删除/清零闪存驱动器并重新格式化它。它是为其他人准备的,所以我试图通过阻止格式化为C:、D:等使其相对安全。我正在寻找一个我可以使用的IFELSE类型的命令,作为一个错误的包罗万象。这是我的ATM的(主要部分):againecho.clsecho.echoPleaseselectthedriveletterfortheflashechodriveyouwishtoeraseecho.echo****DONOTSELECTC:ORD:****echo.echo.echo***Enterletter(nocolon)ONLYe.g."E"***echo.

c++ - Windows 多显示器 : How can I determine if a target is physically connected to a source when the target is available but not active?

我想根据来自DISPLAYCONFIG_TARGET_DEVICE_NAME和/或DISPLAYCONFIG_PATH_TARGET_INFO的信息启用特定的禁用监视器。要实际启用此监视器,我需要做的就是将其成功映射到要启用的匹配设备名称,例如\\.\DISPLAY1。但是如果没有预先存在的特殊知识,我找不到任何通用的方法来做出这个决定。如果我能将它与实际相关匹配的DISPLAYCONFIG_PATH_SOURCE_INFO联系起来就好了。QueryDisplayConfig在我的机器上返回所有可能的源和目标组合,甚至将监视器与它们实际上未连接的源配对。我有4个端口和3个监视器,所以我

windows - 批处理文件 : Check if OS is Windows 10

我想制作一个批处理文件来执行以下操作:检查正在运行的操作系统是否为Windows。如果是,则应打印Hello。我赢了10否则应该打印其他消息。如果有条件,我该怎么做?伪代码:ifOS==Win10thenechoHelloimwin10elseechoIamanotheros 最佳答案 setlocalfor/f"tokens=4-5delims=."%%iin('ver')dosetVERSION=%%i.%%jif"%version%"=="6.3"echoWindows8.1if"%version%"=="6.2"echoWi

windows - 如何在 64 位 Windows 7 上将 Clear Case 与 Windows 资源管理器集成

我想在Windows7中使用Clearcase,这样我就可以从Windows资源管理器checkin/checkout文件。谢谢,拉姆 最佳答案 根据这个compatibilitymatrix,ClearCase7.1+在windows7上支持。安装后,您将能够访问添加到Windows资源管理器上下文菜单中的ClearCase条目。但是,64位版本并不总是显示上述上下文菜单:见technoteswg21251833对于Windows7解决方法:ForWindows7andWindows2008R2,custommenuscanbec

Windows 批处理脚本 : Perform a command if two files are the same!

我原以为这将是一项非常简单的任务,但我已经为此苦苦挣扎了几天,而且有点沮丧!我对Windows批处理脚本不是很熟悉,所以如果您知道答案,请尽可能简单:)基本上,我有一个Windows关机脚本(.bat文件),我想知道其中两个文本文件是否相同(即它们的内容完全相同),如果是,则执行goto命令(例如转到第10行)我不知道该怎么做!非常感谢您的帮助! 最佳答案 没有goto:fc/bfile1file2>nuliferrorlevel1(echodifferent)else(echosame)

Windows 批量转移在 if block 中不起作用

当我尝试在IFblock中使用SHIFT时,我看到了一些意想不到的结果。使用这个:@echooffif"%1"=="/p"(echo%1shiftecho"shifted"echo%1)我得到以下信息:C:\>ex.bat/pHAI/p"shifted"/p但是,当我使用这段代码时:@echooffecho%1shiftecho"shifted"echo%1我明白了:C:\>ex.bat/pHAI/p"shifted"HAI我需要第二个输出,但在一个逻辑block中,这样我就可以遍历它。我正在尝试实现类似于Jon在这里的回答:UsingparametersinbatchfilesatD

windows - 在 "if" block 中设置变量

下面的程序最后总是回显“machine-abc”:@echoOffsetdropLoc=machine-abcIF%computername%=="xyz"(%dropLoc%=machine-xyz)echo%dropLoc%这是范围问题吗?if语句中的dropLoc变量是否具有不同的范围?我尝试了以下方法来解决这个问题:@echoOffsetdropLoc=machine-abcIF%computername%=="xyz"(!dropLoc!=machine-xyz)echo%dropLoc%和@echoOffsetdropLoc=machine-abcIF%computerna