自从有了shell就有了指令,
各种指令拼接成一个生态系统,
相互调用联合起来形成一种文字描述的可执行脚本,
小巧而功能强大.
它不像C程序要编译链接才能运行.
______________________________________________
windows命令行,即:win键+R运行 CMD回车cmd,这个就是命令行(shell)
批处理即将命令行指令,保存为.BAT 文件,或者.CMD文件.双击运行即可执行批处理
当然,windows原生支持.VBS脚本,可以用VB指令写此种批处理
下面将列出各种指令
1.命令行提示修改
prompt ^$^g 修改成大于号
prompt $h 修改成什么提示也没有
prompt -
2.响铃
echo ^G 这个G是CTRL+G输入,回车即可响一声
echo %cd% 显示当前目录
3.设定窗口
MODE CON:COLS=120 LINES=40 改变窗口大小
title 修改标题
color f6 修改背景文字颜色
4.跳转目录
CD /D D:\WORKSPACE
5.条件判断
@if ERRORLEVEL 1 goto error_label
rem ...
:error_label
@if exist %exeName% (
@echo.
@echo running application...
call %exeName%
)
if NOT exist "%SystemRoot%\notepad.exe" goto SystemRoot
6.执行终止并保留命令行
@cmd /k
或者
%comspec% /k
7.设定临时运行环境
@SET PATH=%PATH%;D:\software\vc\bin
@set include =D:\software\vc\include
@set lib=D:\software\vc\library
8.菜单选择
:_start
echo 1. reset
echo 2. exit
echo ________________________________________
SET /P sel=
@if /I "%sel%"=="1" goto _reset
@if /I "%sel%"=="2" exit
goto _start
:_reset
9.列出本机ip地址
ipconfig /all |find "IPv4"
10.时间
延时4秒
ping 127.0.0.1 -n 4 >nul
暂停
pause
11.重定向
echo.>test.txt
echo say hi>>text.txt
echo say hello>>con
echo say something >>lpt
12.注册组件
regsvr32 /s test.dll
13.创建桌面快捷方式
mshta VBScript:Execute("Set a=CreateObject(""WScript.Shell""):Set b=a.CreateShortcut(a.SpecialFolders(""Desktop"") & ""\zzz.lnk""):b.TargetPath=""%~dp0Test.exe"":b.WorkingDirectory=""%~dp0"":b.Save:close")
14.打开文件夹
explorer %cd%
rundll32 shell32.dll,Control_RunDLL "inetcpl.cpl"
rundll32.exe Shell32.dll,Control_RunDLL "timedate.cpl"
15.rem 取当前目录名作为程序名
for %%i in (.) do set EXEfile=%%~ni
16.清除文件不提示
@del /f /s /q *.aps *.idb *.pdb *.exp *.exe.embed.manifest *.exe.intermediate.manifest *.ncb *.user *.pch *.ilk *.dep BuildLog.htm *.rc2
17.应用网络连接
停用
netsh.exe interface set interface name="无线网络连接" admin=disable
启用
netsh.exe interface set interface name="无线网络连接" admin=enable
rem netsh.exe wlan connect wifi_ssid
18.搜索目录和子目录发现.sln文件,就把build.cmd这个批处理拷过去那个目录里
for /r %a in (*.sln) do xcopy /y build.cmd %~dpa
批处理中请把%a换成%%a,即for /r %%a in (*.sln) do xcopy /y build.cmd %%~dpa
其中for /r指定遍历目录所有文件
%a =="加入~dp"==> %~dpa 从%a文件名中取得路径
19.for循环
for /L %a in (1,1,255) do ping 192.168.1.%a -n 1
20.随机数
echo %random%
21.批处理参数
run.bat %1 %2 %3 %4
参数会传入run.bat中,在里面使用%1,%2,%3,%4来引用,参数是以空格分隔的,一个参数里若存在空格请加引号.
%0代表run.bat本身,所以若处理是"%0|%0"则会以级数方式,不断的调用自己
to be continued...