赞
踩
批处理文件包含一系列 DOS命令,通常用于自动执行重复性任务,用户只需双击批处理文件便可执行任务,而无需重复输入相同指令,配合windows定时任务设置可以在Windows中善用批处理可以简化很多重复工作。
批处理文件只是一个以 .bat 文件扩展名保存的文本文件。您可以使用记事本或更高级的文本编辑器如Notepad++ )编写一个,但不要使用文字处理器(如 Microsoft Word),首先右键新建文本文档,将文本文档修改为.bat 文件,就可以编辑脚本了。
脚本如下(示例):
1、复制文件
该脚本将从指定的源路径复制一个文件,并将其粘贴到指定的目标路径。
@echo off
set source=C:\folder\file.txt
set destination=C:\backup\file.txt
copy %source% %destination%
2、批量重命名文件
该脚本将遍历指定文件夹中的所有 txt 文件,并将它们重命名为
“new_name_1.txt”,“new_name_2.txt”等。
@echo off
setlocal enabledelayedexpansion
set counter=1
for %%f in (*.txt) do (
ren "%%f" "new_name_!counter!.txt"
set /a counter+=1
)
3、压缩文件夹
该脚本将使用 7-Zip 压缩指定文件夹,并将压缩文件保存到指定的目标路径。
@echo off
set source=C:\folder
set destination=C:\backup\folder.zip
"C:\Program Files\7-Zip\7z.exe" a -tzip %destination% %source%
4、备份 MySQL 数据库
该脚本将使用 mysqldump 命令备份 MySQL 数据库,并将备份文件保存到指定的目标路径中,文件名包含时间戳以便区分备份版本。
@echo off
setlocal enabledelayedexpansion
set mysqlpath="C:\Program Files\MySQL\MySQL Server 5.7\bin"
set backuppath="C:\backup"
set timestamp=%date:/=-%_%time::=-%
set timestamp=%timestamp: =0%
cd /d %mysqlpath%
mysqldump -u root -pPassword database_name > "%backuppath%\database_name_%timestamp%.sql"
6、监控指定文件夹中的文件变化
该脚本将监控指定文件夹中的文件变化,并在发现文件变化时执行指定的命令。脚本将每秒扫描一次文件夹,发现变化时执行命令并更新文件列表。
@echo off setlocal enabledelayedexpansion set folder=C:\folder set command=echo file changed set filelist= for /f %%f in ('dir /b %folder%') do ( set filelist=!filelist!%%f ) :loop set newfilelist= for /f %%f in ('dir /b %folder%') do ( set newfilelist=!newfilelist!%%f ) if not "!newfilelist!"=="!filelist!" ( %command% set filelist=!newfilelist! ) timeout /t 1 /nobreak >nul goto loop
7、自动化文件删除
该脚本将删除指定文件夹中超过指定天数的文件。脚本将递归扫描所有子文件夹,并删除所有满足条件的文件
@echo off
set folder=C:\folder
set days=30
forfiles /p %folder% /s /d -%days% /c "cmd /c del @path"
8、自动化压缩文件夹
该脚本将使用 PowerShell 中的 Compress-Archive 命令将指定文件夹中的所有文件压缩为 ZIP 格式,并将压缩文件重命名为带有时间戳的名称。
@echo off
setlocal enabledelayedexpansion
set folder=C:\folder
set zipfile=C:\folder.zip
set timestamp=%date:/=-%_%time::=-%
set timestamp=%timestamp: =0%
cd /d %folder%
powershell Compress-Archive -Path * -DestinationPath "%zipfile%"
ren "%zipfile%" "folder_%timestamp%.zip"
9、自动化连接到远程服务器并执行命令
该脚本将使用 PsExec 工具连接到指定的远程服务器,并执行指定的命令。脚本将使用 PsExec 的 -u 和 -p 选项指定用户名和密码,使用 -c 选项指定要执行的命令。在这个示例中,命令为 dir,将显示远程服务器上的文件列表
@echo off
setlocal enabledelayedexpansion
set server=192.168.0.1
set username=user
set password=pass
set command=dir
set psexec="C:\Program Files\Sysinternals Suite\PsExec.exe"
%psexec% \\%server% -u %username% -p %password% %command%
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。