DOS下常用BAT(cmd)命令
在cmd中不显示命令行却显示结果
@echo off
rem off之后ping命令行不会显示在cmd上,结果会在cmd上显示
ping 127.0.0.1
@echo on
rem on之后以下命令行会显示在cmd上
ping 127.0.0.1
在cmd中不显示显示结果
ping 127.0.0.1 > nul
弹出提示框
rem 弹出提示框
mshta vbscript:msgbox("提示内容1",0,"提示窗口1")(window.close)
bat文件里嵌套执行bat文件
- %cd%表示执行命令时所在的目录,%~dp0表示批处理文件所在的目录。
- %cd%是可以改变的,因为它表示的是当前目录,如果在批处理中使用了cd命令就会改变他的值。
- %~dp0是在执行某个批处理结束之前是不会改变的,因为代表的是脚本文件在磁盘的位置。
set cdir=%~dp0
set wdir=%cd%
cd /d %cdir%
rem "将下面的 %startup.bat% 改为真正要启动的bat文件,或者命令”
%startup.bat%
cd /d %wdir%
bat处理命令闪退无法查看错误信息
- 新建一个文件输入以下内容,保存为a.bat,将闪退的bat用鼠标拖到a.bat上即可
@echo off
call %1
echo.
echo.
pause
大概暂停几秒
rem 暂停4秒
ping 127 -n 4 >nul
显示内存条信息
wmic memorychip
添加环境变量
- 如果想快速添加一个环境变量名称,可以使用setx,注意要以管理员身份运行cmd
setx /m yourName yourPath
- 其中/m表示系统环境变量,否则则为用户环境变量
- 如果想一步到位添加到系统变量Path里,则可以如下示例,但此操作会导致原先的系统变量全部都变为绝对路径,因此慎用
set path_=%Path%
setx /m yourName yourPath
setx "Path" "%path_%;%yourName%\bin" /m
查找端口号所对应的进程id
netstat -ano|findstr [端口号]
例如:netstat -ano|findstr 80
强杀进程
taskkill /f /pid [进程id]
参考
- BAT文件语法和技巧(bat文件的编写及使用) - xiaoguan_liu的博客 - CSDN博客
https://blog.csdn.net/xiaoguan_liu/article/details/81458338 - bat弹出提示对话框 - 小青年儿 - CSDN博客
https://blog.csdn.net/l09711/article/details/8738341 - .bat批处理(四):路径相关%cd%和%~dp0的区别 - AlbertS Home of Technology - CSDN博客
https://blog.csdn.net/albertsh/article/details/52807345 - (71条消息) 用setx设置永久环境变量及注意事项_皓月如我的专栏-CSDN博客