此文章发布于61
个月前,部分信息可能已经过时
,请自行斟酌确认。
这里收集我平时常用的 DOS
命令
查看端口占用
//列出所有端口
netstat -ano
//查看指定端口,根据 pid 再从任务管理器查看哪个程序
netstat -aon|findstr "8080"
结束进程
//结束进程
taskkill /f /t /im xxx.exe。
DOS 批处理中 %~dp0 表示什么意思
%0
为当前批处理文件,如果0换成1为第一个文件,2为第2个%0
只能用在批处理文件中,不能用在命令行中
如果想输入%则需要前面再写个%用于转义,如%%会输出一个%
主要选项含义
%0 代表文件本身
d 代表盘符
p 代表路径
f 代表文件名
n 文件名(无扩展名)
z 文件大小
t 文件时间
示例
%~0 - 删除任何引号("),扩充 %0
%~f0 - 将 %0 扩充到一个完全合格的路径名(“f”是file,即文件)
%~d0 - 仅将 %0 扩充到一个驱动器号
%~p0 - 仅将 %0 扩充到一个路径
%~n0 - 仅将 %0 扩充到一个文件名(“n”是name 文件名)
%~x0 - 仅将 %0 扩充到一个文件扩展名
%~s0 - 扩充的路径只含有短名(“s”为Short,短的)
%~a0 - 将 %0 扩充到文件的文件属性(“a”为attribute,即属性)
%~t0 - 将 %0 扩充到文件的日期/时间(“t”time)
%~z0 - 将 %0 扩充到文件的大小(Size 大小)
%~dp0 - 仅将 %0 扩充到一个驱动器号和路径
%~nx0 - 仅将 %0 扩充到一个文件名和扩展名
%~fs0 - 仅将 %0 扩充到一个带有短名的完整路径名
%~ftza0 - 将 %0 扩充到类似输出线路的 DIR
@echo off
echo [INFO] ==命令演示==
echo [info] 当前文件:%0
echo [INFO] 当前文件去引号:%~0
echo [info] 当前文件文件名:%~f0
echo [info] 当前文件大小:%~z0
echo [info] 当前文件扩展名:%~x0
echo [info] 当前文件时间:%~t0
echo [info] 当前文件盘符:%~d0
echo [INFO] 当前文件盘符+路径:%~dp0
echo [INFO] 当前文件盘符+路径+文件名:%~dpf0
echo [INFO] 当前文件盘符+路径+文件名(无扩展名):%~dpn0
echo [INFO] 可以用%%转义:%%~dp0
rem =====批处理示例=====
@echo off
echo.
echo [信息] 打包Web工程,生成war/jar包文件。
echo.
::切换到当前文件盘符
%~d0
::进入当前文件所在目录
cd %~dp0
::返回到上级目录
cd ..
::调用其它批处理
call mvn clean package
::暂停
pause
执行结果如图:
遍历目录所有文件并进行处理
for /r "C:\Program Files (x86)\DevExpress 18.1\Components\Bin\Framework\zh-Hans" %i in (*.dll) do gacutil /i "%i"
获取系统当时日期时间
@echo off
set yyyy=%date:~0,4%
set mm=%date:~5,2%
set dd=%date:~8,2%
set hh=%time:~0,2%
set yyyymmddhh=%yyyy%%mm%%dd%%hh%
echo %yyyymmddhh%