在电脑使用过程中,我们经常会遇到一些重复性的任务,比如文件整理、系统清理、定时备份等。这些任务如果手动操作,不仅费时费力,还容易出错。而使用批处理(Batch Processing)脚本,我们可以轻松实现电脑的自动化操作,提高工作效率。下面,我将为你分享50招实用的cmd批处理技巧,让你轻松掌握电脑自动化操作。
1. 文件夹创建
@echo off
setlocal
set folderName=MyNewFolder
if not exist %folderName% mkdir %folderName%
endlocal
echo Folder created: %folderName%
2. 文件复制
@echo off
setlocal
set sourcePath=C:\sourceFolder
set destinationPath=D:\destinationFolder
xcopy %sourcePath%\* %destinationPath% /e /i /c /h /r /y
endlocal
echo Files copied from %sourcePath% to %destinationPath%
3. 文件夹移动
@echo off
setlocal
set sourcePath=C:\sourceFolder
set destinationPath=D:\destinationFolder
move /e /i /c /h /r /y %sourcePath%\* %destinationPath%
endlocal
echo Files moved from %sourcePath% to %destinationPath%
4. 文件删除
@echo off
setlocal
set filePath=C:\temp\file.txt
del /f /q %filePath%
endlocal
echo File deleted: %filePath%
5. 文件重命名
@echo off
setlocal
set oldName=oldname.txt
set newName=newname.txt
ren %oldName% %newName%
endlocal
echo File renamed from %oldName% to %newName%
6. 文件夹列表
@echo off
setlocal
set folderPath=C:\sourceFolder
for /r %folderPath% %%f in (*) do echo %%f
endlocal
echo List of files in %folderPath%
7. 文件搜索
@echo off
setlocal
set searchKeyword=keyword
for /r C:\ %%f in (*%searchKeyword%*) do echo Found in: %%f
endlocal
echo Search results for "%searchKeyword%"
8. 文件夹大小
@echo off
setlocal
set folderPath=C:\sourceFolder
for /d %%d in ("%folderPath%") do (
set folderSize=%%~z$d
echo Folder size of %folderPath%: %folderSize% bytes
)
endlocal
9. 文件内容替换
@echo off
setlocal
set filePath=C:\temp\file.txt
set oldText=oldText
setText=newText
for /f "tokens=*" %%a in ('type "%filePath%"') do (
set "line=%%a"
set "line=!line:%oldText%=%setText%!"
echo !line!
)
echo Replaced "%oldText%" with "%setText%" in %filePath%
endlocal
10. 文件夹压缩
@echo off
setlocal
set folderPath=C:\sourceFolder
set zipPath=C:\sourceFolder.zip
cd /d "%folderPath%"
7z a -tzip "%zipPath%" .
endlocal
echo Compressed folder %folderPath% into %zipPath%
11. 文件夹解压
@echo off
setlocal
set zipPath=C:\sourceFolder.zip
set destinationPath=C:\destinationFolder
cd /d "%destinationPath%"
7z x "%zipPath%"
endlocal
echo Extracted %zipPath% to %destinationPath%
12. 系统时间设置
@echo off
setlocal
set time=2023-01-01 12:00:00
for /f "tokens=1-5 delims=/:" %%a in ("%time%") do (
set "hour=%%a"
set "minute=%%b"
set "second=%%c"
set "month=%%d"
set "day=%%e"
wmic /namespace:\\root\cimv2 PATH Win32_OperatingSystem SET /value CurrentTime "%hour%:%minute%:%second%"
wmic /namespace:\\root\cimv2 PATH Win32_OperatingSystem SET /value LocalTime "%hour%:%minute%:%second%"
wmic /namespace:\\root\cimv2 PATH Win32 LocalTime SET /value DaylightsSavingTime 0
wmic /namespace:\\root\cimv2 PATH Win32 LocalTime SET /value Local = 1
wmic /namespace:\\root\cimv2 PATH Win32 LocalTime SET /value TimeZone = "GMT Standard Time"
wmic /namespace:\\root\cimv2 PATH Win32 LocalTime SET /value Year = %month%
wmic /namespace:\\root\cimv2 PATH Win32 LocalTime SET /value Month = %day%
)
endlocal
echo System time set to %time%
13. 系统日期设置
@echo off
setlocal
set date=2023-01-01
for /f "tokens=1-3 delims=/:" %%a in ("%date%") do (
set "year=%%a"
set "month=%%b"
set "day=%%c"
wmic /namespace:\\root\cimv2 PATH Win32_OperatingSystem SET /value LocalTime "%day%/%month%/%year%"
wmic /namespace:\\root\cimv2 PATH Win32 LocalTime SET /value DaylightsSavingTime 0
wmic /namespace:\\root\cimv2 PATH Win32 LocalTime SET /value Local = 1
wmic /namespace:\\root\cimv2 PATH Win32 LocalTime SET /value TimeZone = "GMT Standard Time"
wmic /namespace:\\root\cimv2 PATH Win32 LocalTime SET /value Year = %month%
wmic /namespace:\\root\cimv2 PATH Win32 LocalTime SET /value Month = %day%
)
endlocal
echo System date set to %date%
14. 系统关机
@echo off
shutdown /s /t 0
15. 系统重启
@echo off
shutdown /r /t 0
16. 系统休眠
@echo off
rundll32.exe powrprof.dll,SetSuspendState 0,1,0
17. 系统锁定
@echo off
rundll32.exe user32.dll,LockWorkStation
18. 系统音量设置
@echo off
set volume /s 50
19. 系统屏幕亮度设置
@echo off
nircmd.exe monitor setbrightness 50
20. 系统网络连接
@echo off
netsh wlan show profiles
21. 系统磁盘清理
@echo off
cleanmgr /sagerun:1
22. 系统文件备份
@echo off
robocopy C:\sourceFolder D:\backupFolder /s /e /mt
23. 系统文件恢复
@echo off
robocopy D:\backupFolder C:\sourceFolder /s /e /mt
24. 系统定时任务
@echo off
schtasks /create /tn "MyTask" /tr "C:\path\to\script.bat" /sc onstart
25. 系统网络诊断
@echo off
ping www.google.com
26. 系统IP配置
@echo off
ipconfig /all
27. 系统进程管理
@echo off
tasklist
28. 系统服务管理
@echo off
sc query state= all
29. 系统版本信息
@echo off
systeminfo
30. 系统驱动程序列表
@echo off
driverquery
31. 系统硬件信息
@echo off
wmic cpu get name
32. 系统内存信息
@echo off
wmic memorychip get capacity
33. 系统磁盘空间
@echo off
wmic logicaldisk get freespace
34. 系统网络连接速度
@echo off
netstat -an
35. 系统进程占用
@echo off
tasklist /fi "PID eq 1234"
36. 系统服务状态
@echo off
sc query state= all
37. 系统环境变量
@echo off
set
38. 系统路径变量
@echo off
path
39. 系统系统时间
@echo off
time
40. 系统日期
@echo off
date
41. 系统版本
@echo off
ver
42. 系统用户列表
@echo off
net user
43. 系统用户组列表
@echo off
net localgroup
44. 系统用户权限
@echo off
icacls
45. 系统文件权限
@echo off
icacls
46. 系统网络连接
@echo off
netstat -an
47. 系统进程管理
@echo off
tasklist
48. 系统服务管理
@echo off
sc query state= all
49. 系统版本信息
@echo off
systeminfo
50. 系统驱动程序列表
@echo off
driverquery
以上50招cmd批处理技巧,可以帮助你轻松实现电脑的自动化操作。通过学习和实践这些技巧,你可以提高工作效率,节省时间和精力。希望这些技巧对你有所帮助!
