㈠ 怎么让bat执行命令失败时重复执行
原因很简单,你保存成bat文件名是arp.bat吧。。改个名字就好了
㈡ bat如何循环执行一条命令
:start
@echoC:UsersadminDesktop
@gotostart
此为死循环,你可以把@echo C:UsersadminDesktop换成你想要的命令
㈢ 怎样用批处理完成和"桌面右击刷新"一样的功能的刷新
加个自动刷新功能还要调用吗?
是不是先建立xxx.bat?再建一个xxx.vbs?这样做的目的是什么呢?是不是多此一举了?其实很多人不明白F5按一下键的事为什么还要多此一举弄个自动刷新,其实问这个问题的人很聪明。我来给你们说一说,vbs自动刷新的作用。
首先,我们在执行一系列的命令之后,可能有些东西从视觉上不能实时生效,但是呢为了保证后续一系列的命令100%顺利执行,那么就需要自动刷新一下来解决,当然,这整个脚本都必须是在隐藏命令窗口的条件下,自动刷新才能生效,因为我们要保证此时我们的鼠标指针是处在桌面上的,当我们从桌面打开这个批处理文件的时候就意味着它已经处于桌面,如果是显窗执行,那么刷新代码是会跑空的;此外刷新命令还有一个作用,比方说,我正在运行一个不是实时更新的通讯窗口(这个通讯窗口一定是要支持F5键物理刷新的),两个人的信息交流每次都要对窗口手动刷新一下,那么只要我们处于通讯窗口,可以开一个每x秒刷新一次的vbs脚本;此外,比如我们向某一个服务端提交通讯数据之后需要刷新查看反馈结果是否成功,也可以应用这个批处理自动刷新功能,比方说,我现在要向一个服务端每3分钟提交一次讯息,每提交一次等待3秒刷新一下通讯窗口防止链接中断或者对方的回复无法更新到我们的对话窗口,那么我就会写一个固定的提交列表,每一次提角做一个定时器,那么和自动刷新组合起来就是:定时信息内容+定时刷新的一个组合循环。所以说,不要小看一句简单的自动刷新句子,它的应用场景非常广泛,就是看你会不会活用。楼主的想法或是应用这个功能的意图是不是我所说的呢?
这里给你句子:
SetShell=WScript.CreateObject("WScript.Shell")
WScript.Sleep0
Shell.SendKeys"{F5}"
第一行:调用模拟按键
第二行:定时器,每1000=1秒,0=不定时,不定时可以直接去掉这一行
第三行:模拟按下F5键位
顺便提一下:VBS中是不能用@ECHOOFF语句的,可能会报错,VBS默认是无框执行的。
最佳答案的方法是通过隐藏运行的bat批处理调用自动刷新vbs文件来实现的,既然vbs自身能直接实现,为什么不直接用vbs编译呢?然后,如果你中间需要执行的文件特别多,最好是通过vbs调用bat来做,因为bat的命令相对来说随性一点,但是有很多必要的东西放在bat中是不能实现的。比方说,如果你最终想利用bat和vbs组合出来一个小工具,然后封包成EXE来执行,以好压自解压封包为例。那么,你需要做的是隐藏命令窗口,但是一旦隐藏了命令窗口,这意味着你在bat中编写的对话框全部都会失效。而通过vbs制作的对话框以及弹窗则不会被隐藏,所以建议使用vbs调用bat来写东西,当然这只是一个点,还有更多的差异这里就不多说了。我给个实例如下:
通过vbs调用bat,然后封包成exe
vbs示例代码如下:
msgbox"大家好,我系渣渣辉",title,"贪玩蓝耶!"
msgbox"装备全靠打",title,"一键回收"
msgbox"跟我一起行动吧!",title,"爆将备啦!"
Setws=CreateObject("Wscript.Shell")
ws.run"cmd/cCout1.bat",vbhide,True
SetShell=WScript.CreateObject("WScript.Shell")
WScript.Sleep3000
Shell.SendKeys"{F5}"
msgbox"干掉大BOSS",title,"赶紧回血!"
Setws=CreateObject("Wscript.Shell")
ws.run"cmd/cCout2.bat",vbhide,True
SetShell=WScript.CreateObject("WScript.Shell")
WScript.Sleep3000
Shell.SendKeys"{F5}"
msgbox"终于干掉啦!",title,"你心动了吗"
CreateObject("scripting.filesystemobject").deletefilewscript.scriptfullname
“True”表示执行完同一行中调用的命令关闭之后才往下执行,如果想几个bat命令同时执行,我们可以直接去掉,那么会同时打开多个bat脚本执行,但是,如果两个或多个bat命令同时对一个文件执行,必然会出错。
最后一句是在用户解压运行之后程序自杀,等于在bat中的句子“del%0”
补充内容:利用好压或者winrar将批处理组合封包成exe的方法
首先,我们在做封包之前需要明白,自解压的exe不管是什么内容,只要自定义图标了,都是在安全软件的查杀标准安全范围之外的,几乎所有杀软都不承认自解压打包的exe可执行文件的安全性。如果你不是很在意这个很烦的提示,那么就按照下面的方法去做,如果先不然安全软件查杀,那么就需要使用exe电子书工具生成的界面,然后将所有批处理文件打包到电子书附件中去,然后通过按钮链接到附件就能够实现不报毒,在压缩时不修改图标也不会报毒,出这两种方法之外,还可以使用易语言或其他简易的编程工具做一个简单的界面,然后将所有原始格式(bat/vbs)批处理文件放到同一个文件夹下,然后通过按钮简单的调用。以下只列举以好压为例的打包方法:
以下是一个简单的vbs+bat组合小工具的文件内容截图
无论是bat还是vbs脚本语言都只能做到模拟键盘按键,而鼠标不同,光标的位置是不确定的,如果说我们想要实现模拟鼠标的右键功能,那么前提就是我们必须获取到鼠标当前的坐标,然后需要将鼠标切换到指定的需要执行刷新窗体或桌面,也就是说,我们无论是模拟按键F5还是模拟鼠标右键刷新,都需要保证让工作界面处于我们需要做刷新动作的界面。注意前面的那一句话:“获取光标当前的坐标”,这需要我们创建一个数据传递结构的框架来获取实时的坐标信息,然后才能判断出对应的菜单项所处的位置,而鼠标右键菜单又有一个特性,那就是可以由用户自行添加或减少右键菜单的快捷键,但用户又不能控制自行添加的快捷键所处的排序位置,刷新菜单项有可能会被顶掉,当然通常情况下不会影响到刷新按钮的排序位置,因为它排在第三,比较靠前。就算我们能够获取鼠标的精准坐标,如果你此时同时在操作鼠标,那么这个位置就不对了,所以简单的vbs和bat理论上是无法实现模拟鼠标右键刷新的,至少我不会!但是在其他语言中,例如C#/C++/VB/DELPHI等编程语言中,可以实现极为短暂锁定鼠标-读取坐标-刷新-解除锁定。那么,按照你的意愿可以通过以上的调用形式,通过其它高级编程语言先将刷新动作写成可执行文件exe或者msi都是可以的,相对繁琐很多,不过你可以去下载一个别人做好的刷新动作可执行文件,然后再从脚本语言中调用,码字不易,希望能帮到你!我是一个不为悬赏作答的人,因为你已经采纳过了,因为我也比较喜欢空闲时倒腾这些东西,算得上一种业余爱好吧!
㈣ bat 右键刷新命令
@Echo off
rundll32.exe USER32.DLL,UpdatePerUserSystemParameters
试试看行不行.
㈤ bat——批处理代码,刷新当前文件夹
没必要刷新,执行完毕都是实时改变的
再说XP上的刷新命令在WIN7上没法用了,我没办法测试啊!要不使用VBS来模拟按F5刷新?可是这个就要保证当前最前面的文件夹必须是你要刷新的那个,否则刷到别的地方就白搭了。
exit上面回车空起一行,把下面内容加到你刚刚空起的那里即可。
(echoSetWshShell=WScript.CreateObject^("WScript.Shell"^)
echoWScript.Sleep1000
echoWshShell.SendKeys"{F5}")>F5.vbs
start""F5.vbs
㈥ bat文件命令大全
有关某个命令的详细信息,请键入 HELP 命令名
ASSOC 显示或修改文件扩展名关联。
AT 计划在计算机上运行的命令和程序。
ATTRIB 显示或更改文件属性。
BREAK 设置或清除扩展式 CTRL+C 检查。
CACLS 显示或修改文件的访问控制列表(ACLs)。
CALL 从另一个批处理程序调用这一个。
CD 显示当前目录的名称或将其更改。
CHCP 显示或设置活动代码页数。
CHDIR 显示当前目录的名称或将其更改。
CHKDSK 检查磁盘并显示状态报告。
CHKNTFS 显示或修改启动时间磁盘检查。
CLS 清除屏幕。
CMD 打开另一个 Windows 命令解释程序窗口。
COLOR 设置默认控制台前景和背景颜色。
COMP 比较两个或两套文件的内容。
COMPACT 显示或更改 NTFS 分区上文件的压缩。
CONVERT 将 FAT 卷转换成 NTFS。您不能转换
当前驱动器。
COPY 将至少一个文件复制到另一个位置。
DATE 显示或设置日期。
DEL 删除至少一个文件。
DIR 显示一个目录中的文件和子目录。
DISKCOMP 比较两个软盘的内容。
DISKCOPY 将一个软盘的内容复制到另一个软盘。
DOSKEY 编辑命令行、调用 Windows 命令并创建宏。
ECHO 显示消息,或将命令回显打开或关上。
ENDLOCAL 结束批文件中环境更改的本地化。
ERASE 删除至少一个文件。
EXIT 退出 CMD.EXE 程序(命令解释程序)。
FC 比较两个或两套文件,并显示
不同处。
FIND 在文件中搜索文字字符串。
FINDSTR 在文件中搜索字符串。
FOR 为一套文件中的每个文件运行一个指定的命令。
FORMAT 格式化磁盘,以便跟 Windows 使用。
FTYPE 显示或修改用于文件扩展名关联的文件类型。
GOTO 将 Windows 命令解释程序指向批处理程序
中某个标明的行。
GRAFTABL 启用 Windows 来以图像模式显示
扩展字符集。
HELP 提供 Windows 命令的帮助信息。
IF 执行批处理程序中的条件性处理。
LABEL 创建、更改或删除磁盘的卷标。
MD 创建目录。
MKDIR 创建目录。
MODE 配置系统设备。
MORE 一次显示一个结果屏幕。
MOVE 将文件从一个目录移到另一个目录。
PATH 显示或设置可执行文件的搜索路径。
PAUSE 暂停批文件的处理并显示消息。
POPD 还原 PUSHD 保存的当前目录的上一个值。
PRINT 打印文本文件。
PROMPT 更改 Windows 命令提示符。
PUSHD 保存当前目录,然后对其进行更改。
RD 删除目录。
RECOVER 从有问题的磁盘恢复可读信息。
REM 记录批文件或 CONFIG.SYS 中的注释。
REN 重命名文件。
RENAME 重命名文件。
REPLACE 替换文件。
RMDIR 删除目录。
SET 显示、设置或删除 Windows 环境变量。
SETLOCAL 开始批文件中环境更改的本地化。
SHIFT 更换批文件中可替换参数的位置。
SORT 对输入进行分类。
START 启动另一个窗口来运行指定的程序或命令。
SUBST 将路径跟一个驱动器号关联。
TIME 显示或设置系统时间。
TITLE 设置 CMD.EXE 会话的窗口标题。
TREE 以图形模式显示驱动器或路径的目录结构。
TYPE 显示文本文件的内容。
VER 显示 Windows 版本。
VERIFY 告诉 Windows 是否验证文件是否已正确
写入磁盘。
VOL 显示磁盘卷标和序列号。
XCOPY 复制文件和目录树。
appwiz.cpl------------添加删除程序
control userpasswords2--------用户帐户设置
cleanmgr-------垃圾整理
CMD--------------命令提示符可以当作是 Windows 的一个附件,Ping,Convert 这些不能在图形环境下 使用的功能要借助它来完成。
cmd------jview察看Java虚拟机版本。
command.com------调用的则是系统内置的 NTVDM,一个 DOS虚拟机。它完全是一个类似 Virtual PC 的 虚拟环境,和系统本身联系不大。当我们在命令提示符下运行 DOS 程序时,实际上也 是自动转移到 NTVDM虚拟机下,和 CMD 本身没什么关系。
calc-----------启动计算器
chkdsk.exe-----Chkdsk磁盘检查
compmgmt.msc---计算机管理
conf-----------启动 netmeeting
control userpasswords2-----User Account 权限设置
devmgmt.msc--- 设备管理器
diskmgmt.msc---磁盘管理实用程序
dfrg.msc-------磁盘碎片整理程序
drwtsn32------ 系统医生
dvdplay--------启动Media Player
dxdiag-----------DirectX Diagnostic Tool
gpedit.msc-------组策略编辑器
gpupdate /target:computer /force 强制刷新组策略
eventvwr.exe-----事件查看器
explorer-------打开资源管理器
logoff---------注销命令
lusrmgr.msc----本机用户和组
msinfo32---------系统信息
msconfig---------系统配置实用程序
net start (servicename)----启动该服务
net stop (servicename)-----停止该服务
notepad--------打开记事本
nusrmgr.cpl-------同control userpasswords,打开用户帐户控制面板
Nslookup-------IP地址侦测器
oobe/msoobe /a----检查XP是否激活
perfmon.msc----计算机性能监测程序
progman--------程序管理器
regedit----------注册表编辑器
regedt32-------注册表编辑器
regsvr32 /u *.dll----停止dll文件运行
route print------查看路由表
rononce -p ----15秒关机
rsop.msc-------组策略结果集
rundll32.exe rundll32.exe %Systemroot%System32shimgvw.dll,ImageView_Fullscreen----启动一个空白的Windows 图片和传真查看器
secpol.msc--------本地安全策略
services.msc---本地服务设置
sfc /scannow-----启动系统文件检查器
sndrec32-------录音机
taskmgr-----任务管理器(适用于2000/xp/2003)
tsshutdn-------60秒倒计时关机命令
winchat--------XP自带局域网聊天
winmsd---------系统信息
winver-----显示About Windows 窗口
wupdmgr-----------Windows Update
㈦ bat文件,怎样在执行完一个命令后几秒再执行下一个命令
比如要隔3秒左右,那就用以下的命令:
ping 127.0.0.1 -n 3 >nul
如果要隔10秒左右,就把后面的那个3改成10即可。如:
ping 127.0.0.1 -n 10 >nul
㈧ 求问 BAT脚本如何自动执行 adb shell 以后的命令
这是无法实现的。你无法在bat脚本中运行交互式shell命令,你的命令无法发送进入。
bat脚本运行时,是在CMD的环境下运行,它的命令解释器是cmd。
而su在shell环境下执行的,它的命令解释器是shell下的"/system/bin/sh"。
su是一条交互式的shell命令,它需要与shell环境下的用户进行交互操作。
问题就在这里了,
bat脚本只负责将"shell su"作为参数传递执行一次adb.exe。
这个动作完成,这条命令的步骤就算结束了,
但此时su还有一个切换用户身份的动作,如果有密码还会通过shell请求用户输入密码,
但运行bat的cmd环境是它收不到这个请求的。
解决办法:
一. 将su命令之后需要执行的命令写成一个sh脚本。
通过adb将sh脚本推入手机中,并为脚本添加可执行权限
在bat中添加一条比方说这样的命令
adb shell ". /path/to/your/file.sh"
二. 安装superSU授权管理器
安装superSU授权管理器后执行
adb root
授权,允许adb以root身份运行。
这之后你通过adb 发送的shell命令会以root身份执行。
㈨ 如何使用bat执行命令
如果只要一个文件的话,不用start就可以了啊....