【Windows批处理】常用命令解析

0.【背景】常用参数:

/* Win XP实测,测试方法:echo %userprofile% */
%systemdrive% -- C: %windir% -- C:\WINDOWS %userprofile% -- C:\Documents and Settings\用户名XXX

1.【目的一】:删除指定文件,删除指定目录

例:删除目录D:\cx\f和删除文件D:\cx\a.t

cd /d D:\cx
del a.t
rd f /s /q

命令解析:
[删除一个目录] rd f /s /q    (/s删除整个目录  /q安静模式)
删除f文件夹本身

[删除一个或数个文件] del f /f /q
只删除指定目录f下的文件,
不能删除该指定目录,
不能删除指定目录下的子文件夹(不管是该子文件夹还是子文件夹里的文件)

2.【字符@用法】——@表示该条命令不显示

1)test2.bat内容@pause

输出:

请按任意键继续. . .

2)test2.bat内容pause

输出:


D:\cx>pause 请按任意键继续. . .

注:不知道为什么会有空行??

3.【获取当前路径】

@echo off
echo 当前盘符:%~d0
echo 当前盘符和路径:%~dp0
echo 当前批处理全路径:%~f0
echo 当前盘符和路径的短文件名格式:%~sdp0
echo 当前CMD默认目录:%cd%
pause

输出:

当前盘符:F:
当前盘符和路径:F:\TDDOWNLOAD\KuGou\Lyric\
当前批处理全路径:F:\TDDOWNLOAD\KuGou\Lyric\tm.bat
当前盘符和路径的短文件名格式:F:\TDDOWN~1\KuGou\Lyric\
当前CMD默认目录:F:\TDDOWNLOAD\KuGou\Lyric
请按任意键继续. . .

4.【两个bat脚本之间的参数传递】

<方法一>
1.bat

@echo off
set pp=apple
set mm=banana
call 2.bat

2.bat

echo %pp%%mm%
pause

显示:
applebanana
请按任意键继续. .

<方法二>
1.bat

@echo off
call 2.bat apple banana

2.bat

@echo off
echo %1%2
pause

显示:
applebanana
请按任意键继续. .

注:两个脚本之间的参数传递感觉就是拷贝至一个脚本,再运行;(仔细看2.bat,不管有没有@echo off,效果都一样)

5.其他:CMD好玩的命令

color 20  设置cmd窗口背景色和前景色;color 恢复cmd窗口默认的背景色和前景色
COMP     比较两个或两套文件的内容。
XCOPY    复制文件和目录树。(拷贝子文件夹)
COPY     将至少一个文件复制到另一个位置。(不拷贝子文件夹)
DATE     显示或设置日期。(date /t)
TIME     显示或设置系统时间。(time/t)
FC       比较两个或两套文件,并显示不同处。

REM  XXX   添加注释

mkdir "D:\Program Files\IDM Computer Solutions\UltraEdit"


扩展名相关:
ASSOC    显示或修改文件扩展名关联。
FTYPE    显示或修改用于文件扩展名关联的文件类型
示例:
    ASSOC .pl=PerlScript
    FTYPE PerlScript=perl.exe %1 %*

6.未处理

符号::的用法?

原文地址:https://www.cnblogs.com/caixu/p/3080766.html