dir F:\Haoran\桌面 #显示temp1目录下的文件和目录信息,显示信息包含日期、时间、文件类型和文件名 dir F:\Haoran\桌面 /a:a /b #只显示temp1目录下(不包括子目录)的文件的绝对路径,不显示日期、时间、文件类型和文件名 dir F:\Haoran\桌面 /a:a /b /s /o:n #显示temp1路径下(包括子目录)的所有文件的绝对路径。输出文件按照文件名数字顺序排序 dir F:\Haoran\桌面\*.txt /a:a /b /o:n #显示.txt后缀文件,并且按照文件名顺序排序(/on),其他排序方法查看help dir
type file1.txt #查看file1文件内容 type file1.txt file2.txt #查看file1和file2文件内容 type file1.txt > file2.txt #将file1.txt文件内容重定向到file2.txt type nul > file1.txt #创建文件
举例:del 删除文件命令
del d:\temp1\file1.txt #删除temp目录下的file1.txt文件 del d:\temp\*.txt #删除temp目录下的后缀为.txt的文件
net user #windows 账户管理工具 net user guest #列出 guest 账户的信息 net user hacker 123456 /add #添加账户 net user hacker 888888#修改密码 net user hacker /active:yes|no #启用|禁用账户 net user hacker /delete #删除账户 net localgroup #查看用户组
网络 管理 命令
ipconfig #显示网络配置信息 ipconfig /all #显示完整配置信息 ipconfig /displaydns #显示 DNS 缓存 ipconfig /flushdns #清理 DNS 缓存
echo on #批处理命令在执行时显示自身命令行 echo off #批处理命令在执行时不显示自身命令行 @echo off #关闭echo 关闭命令行自身的显示,一般命令行输入会先把你的命令输入一遍再去输出结果 echo Hello World #打印Hello World echo . #输出空行,"."可以用,:;”/[\]+等任一符号替代 echo test > file.txt #创建包含字符test的file.txt文件 echo y | del d:\temp\*.txt #输入y确认删除
pause 暂停并输出“请按任意键继续. . .”
pause #等待并提示"请按任意键继续. . ." pause > nul #等待但不出现提示语 echo wait a moment.. & pause > nul #输出指定输出语"wait a moment.."并等待操作
@echo off for /l %%i in (1,2,10) do ( echo %%i ) pause
(4)FOR语句的/F参数包含如下3种命令格式:
FOR /F ["options"] %variable IN (file-set) DO command [command-parameters] FOR /F ["options"] %variable IN ("string") DO command [command-parameters] FOR /F ["options"] %variable IN ('command') DO command [command-parameters]
if %var% == 1 ( echo"the number equal to 1" ) elseif %var% == 2 ( echo"the number equal to 2" ) elseif %var% == 3 ( echo"the number equal to 3" ) else ( echo"input wrong number,exit program." )
pause
文件和目录相关操作
@echo off
rem "About operate directory&file bat script"
title Test bat
set CURRENTDIR=D:\worktset TEMPDIR=%CURRENTDIR%\temp set TEMPFILE=%TEMPDIR%\temp.txt
if not exist %TEMPDIR% ( echo"Create temp directory" mkdir %TEMPDIR% ) else ( echo The directory of %TEMPDIR% existed,recreate directory )
if not exist %TEMPFILE% ( echo Create temp file type nul > %TEMPFILE% ) else ( echo echo"=========%DATE% %TIME%================" >> %TEMPFILE% )
echo Happy New Year! >> %TEMPFILE% echo Congratulate to everyone >> %TEMPFILE%
rem copy file and directory
set TEMPDIR2=%CURRENTDIR%\temp2
md %TEMPDIR2% xcopy /s /y %TEMPDIR% %TEMPDIR2%
type %TEMPDIR2%\temp.txt
pause
将指定目录下的文件输出并移动到指定目录下
@echo off
rem 如果路径中包含空格,变量值需带双引号rem WORK_DIR表示要操作的文件夹,DEST_DIR表示文件要保存的目标文件夹 SET WORK_DIR="c:\Program Files" SET DEST_DIR="D:\temp"
if not exist %DEST_DIR% ( mkdir %DEST_DIR% ) for /f "delims=" %%i in ('dir /b /s /o:n /a:a %WORK_DIR%') do ( echo %%i copy"%%i" %DEST_DIR% ) pause
将指定目录下的文件按照文件名排序输出。
@echo off
SET WORK_DIR=D:\temp\work for /f "delims=" %%i in ('dir /a /b /on %WORK_DIR%\*.txt') do ( echo %%i ) pause
hexo备份博客bat脚本
@echo =========日期时间按照YYYYMMDD_HHMMSS格式显示============= set CURRENT_DATE_TIME_STAMP=%date:~0,4%%date:~5,2%%date:~8,2%_%time:~0,2%%time:~3,2%%time:~6,2% echo%CURRENT_DATE_TIME_STAMP% @echo =========================================================
@echo off :: 去掉所有空格空格 :: Code by JM 2006-11-28CMD@XP :: 出处:http://www.cn-dos.net/forum/viewthread.php?tid=25172 set "CURRENT_DATE_TIME_STAMP=%CURRENT_DATE_TIME_STAMP: =%" echo "☆%CURRENT_DATE_TIME_STAMP%☆Startcopy~~~"
tar -zcvf F:\BackupFile\myblog_backup.tar.gz F:\Haoran\桌面\myblog\* qshell fput hexobackup myblog/myblog_%CURRENT_DATE_TIME_STAMP%.tar.gz F:\BackupFile\myblog_backup.tar.gz