找回密码
 注册
搜索
[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
查看: 28959|回复: 6

[注册表类] [已解决]批处理如何根据指定注册表项/值/数据是否存在执行不同操作?

[复制链接]
发表于 2016-6-12 17:51:43 | 显示全部楼层 |阅读模式
本帖最后由 gd6570 于 2016-6-13 11:13 编辑

论坛里面有一个类似的帖子,不过我不太会改,而且还有其他的问题要问所以就发了一个新帖。
类似贴链接:http://www.bathome.net/redirect.php?fid=5&tid=7788&goto=nextnewset

上面的帖子里面有以下语句:
@echo off
reg query HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Run /v QQ.exe>nul 2>nul&&echo 存在QQ.exe||echo 不存在QQ.exe
pause>nul
问题1:请问代码第二行什么意思?特别是“/v QQ.exe>nul 2>nul”这一段,那个数字2是干嘛的?

问题2:如标题,怎么判断项存在不存在,存在执行语句1不存在执行语句二?

问题3:对于问题2能不能写成if(条件){语句一}else if(条件){语句二}else{语句三}这种句式?

评分

参与人数 1PB -30 收起 理由
pcl_test -30 勿发同类贴、重复贴,在原帖追问

查看全部评分

发表于 2016-6-12 21:12:52 | 显示全部楼层
答案1

读取、新建、修改、删除注册表键值专题帖
http://bbs.bathome.net/thread-21223-1-1.html

批处理中的重定向符号以及句柄的使用方法和讲解
http://bbs.bathome.net/thread-3296-1-1.html
发表于 2016-6-12 21:17:29 | 显示全部楼层
答案3
  1. @echo off
  2. reg query HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Run /v QQ.exe>nul 2>nul
  3. if errorlevel 1 (
  4.     echo 语句1
  5. ) else if A equ B (
  6.     echo 语句2
  7. ) else (
  8.     echo 语句3
  9. )
  10. pause
复制代码
 楼主| 发表于 2016-6-12 23:46:58 | 显示全部楼层
回复 2# gawk


    那个2>null 1>null的帖子貌似被删了,访问不了了
 楼主| 发表于 2016-6-12 23:51:50 | 显示全部楼层
答案3
gawk 发表于 2016-6-12 21:17



    请问不判断键值,只判断[HKEY_CURRENT_USER\Control Panel]项是否存在,的else if语句怎么写呢?
发表于 2016-6-13 00:57:00 | 显示全部楼层

  1. reg Query "HKCU\Control Panel" >nul 2>nul
  2. if %Errorlevel% EQU 0 (
  3.     echo.存在
  4. ) else (
  5.     echo.不存在
  6. )
复制代码
发表于 2016-6-13 09:10:10 | 显示全部楼层
回复 4# gd6570


    没事,看完其它几个帖子一样能明白它是什么意思。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

Archiver|手机版|小黑屋|批处理之家 ( 渝ICP备10000708号 )

GMT+8, 2026-3-17 14:49 , Processed in 0.011156 second(s), 8 queries , File On.

Powered by Discuz! X3.5

© 2001-2026 Discuz! Team.

快速回复 返回顶部 返回列表