标签:
一定要在记事本里写,nodepad++中可能会有些默认的样式,曾经把nodepad++中的批处理代码直接复制到txt中是没有格式的,最终导致批处理无法执行。所以最好在txt中书写,按照格式空格换行写好就好了,有些时候看着代码格式无误,但运行出错,可能是因为中间有些格式在编辑时出错,比如换行目测有实际没有等的情况,在错误所在处进行检测,可以重新写一遍或者重新敲下回车试试。
@echo off
echo ----1、注销系统
echo ----2、重启系统
echo ----3、关闭系统
echo ----4、退出
set num=
::接收用户的输入并作为变量保存到num中去
set /p num=请选择你要执行的操作:
if "%num%"=="1"(
logoff
)
if "%num%"=="2"(
shutdown -r /t 000
)
if "%num%"=="3"(
shutdown -p
)
echo 你输入了%num%将退出
pause
@echo off
if exist a.txt (
echo 找到了a.txt,其内容为 type a.txt) else (
echo 没有找到a.txt
)
pause
@echo off
find "1" 1.txt | sort /r >2.txt
::/r为倒序排列
pause
ping sz.tencent.com > a.txt
ping sz1.tencent.com >> a.txt
ping sz2.tencent.com >> a.txt
ping sz3.tencent.com >> a.txt
ping sz4.tencent.com >> a.txt
ping sz5.tencent.com >> a.txt
ping sz6.tencent.com >> a.txt
@echo off
set nnn=
set /p nnn=请输入命令:
%nnn%
pause
@echo off
set /p num=请输入要执行的操作:
set /p a=请输入内容:
set /p b=请输入文件名:
set /p c=请输入复制后的文件名:
echo %a% >%b%.txt
copy %b%.txt c:\%c%.txt
pause
set a=
set b=
set c=
@echo off
echo "将在新窗口中执行命令"
start /wait cd /d c:\
::将等待新窗口执行完毕
pause
@echo off
echo "将在新窗口中执行命令"
start cd /d c:\
::只负责在新窗口执行命令
pause
@echo off
set /p n=请输入要执行的操作:
if "%n%"=="1" (
set /p a=请输入内容:
set /p b=请输入文件名:
set /p c=请输入复制后的文件名:
goto aa
:aa
echo %a% >%b%.txt
goto bb
:bb
copy %b%.txt c:\%c%.txt
::if中的变量引用如果不使用goto时只能引用到第一个变量!
)
pause
set a=
set b=
set c=
set num=
goto last
type a.txt
:last
dir a.txt
pause
@echo off
echo 正在调用called.bat
pause
call called.bat
echo called.bat 调用完毕!
echo 现在开始调用xx后面的命令
call :xx
:xx
xx后面的命令
pause
called.bat文件:
echo "called中的批处理"
netstat -a -n > a.txt
type a.txt | find ‘7626‘ && echo ‘Congrartulations! You have infected GLACIER!‘
del a.txt
pause & exit
@echo off
echo "collection:" > a.txt
for %%x in (*.bat) do (
type %%x >> a.txt
)
pause
@echo off
sort <1.txt
pause
标签:
原文地址:http://www.cnblogs.com/rubyisaPM/p/4380077.html