九色国产,午夜在线视频,新黄色网址,九九色综合,天天做夜夜做久久做狠狠,天天躁夜夜躁狠狠躁2021a,久久不卡一区二区三区

打開APP
userphoto
未登錄

開通VIP,暢享免費(fèi)電子書等14項超值服

開通VIP
批處理各符號的功能

批處理各符號的功能

批處理各符號的功能:
1.
echo有兩個狀態(tài)一個是on 一個是off默認(rèn)的是on 它的功能是顯示當(dāng)前文件的路徑,如果不寫on 或者是off的時候,默認(rèn)情況下

是打開的即顯當(dāng)前文件的路徑,加上off后,所有路徑都不顯示,但是echo off這行還能顯出來,要讓這行也消失的話就在它們前面

加一個@即@echo off,另外echo命令的另一種用法,可以直接編輯文本文件,例如:
echo netstat -an >a.bat結(jié)晶果是在當(dāng)前目錄下生成一個a.bat的文件,雙擊直接執(zhí)行這個文件時,就會執(zhí)行netstat -an這個命令

。

2.
> 這個字符的意思是將”>”前面的內(nèi)容傳遞并且覆蓋”>”后面的內(nèi)容,它所起的作用是將運(yùn)行的回顯結(jié)果傳遞到后面的范圍.
例如:ipconfig.txt中的內(nèi)容是1113333,執(zhí)行ipconfig /all >ipconfig.txt即將ipconfig /all的內(nèi)容覆蓋原有的1113333。與這個

符號相似的還有>>它的功能不是覆蓋而追加,即將運(yùn)行后的內(nèi)容加到原來的1113333后。

3.
| 這是一個管道傳輸命令,意思是將上一命令執(zhí)行的結(jié)果傳到下一個命令去處理
例如:
dir c:\|find “txt”
以上命令是:查找C:\所有,并發(fā)現(xiàn)TXT字符串。

||

Usage:第一條命令 || 第二條命令 [|| 第三條命令...]

用這種方法可以同時執(zhí)行多條命令,當(dāng)碰到執(zhí)行正確的命令后將不執(zhí)行后面的命令,如果沒有出現(xiàn)正確的命令則一直執(zhí)行完所有命令

;(只要正確后面的就不執(zhí)行)

4.
^ 是對特殊符號”<”,”>”,”&”的前導(dǎo)字符,在命令中他將以上3個符號的特殊功能去掉,僅僅只把他們當(dāng)成符號而不使用他們的特殊

意義。
例如:
C:\>echo ipconfig.txt ^>ipconfig

結(jié)果為:ipconfig.txt >ipconfig沒有追加只是顯示出來而已

5.
& 這個符號允許在一行中使用2個以上不同的命令,當(dāng)?shù)谝粋€命令執(zhí)行失敗了,也不影響后邊的命令執(zhí)行

例如:C:\>dir d:/p & dir e: /p & dir c: /p
結(jié)果是先后執(zhí)行

6.
&& 這個命令和上邊的類似,但區(qū)別是,第一個命令失敗時,后邊的命令也不會執(zhí)行
例如:C:\>dir w:/p && dir e: /p && dir c: /p 由于電腦上沒有w盤所以顯示結(jié)果為:系統(tǒng)找不到指定的路徑。這樣以來,后面的

兩個盤就不執(zhí)行啦。(當(dāng)?shù)趎個命令失敗時此命令后面的命令將不再執(zhí)行,也就是說一直執(zhí)行到失敗為止)
7.
“” 雙引號允許在字符串中包含空格,進(jìn)入一個特殊目錄可以用如下方法

cd “program files”
cd progra~1
cd pro*

以上三種方法都可以進(jìn)入program files這個目錄

8.
, 逗號相當(dāng)于空格,在某些情況下“,”可以用來當(dāng)做空格使

比如

dir,c:\

9.
; 分號,當(dāng)命令相同時,可以將不同目標(biāo)用;來隔離,但執(zhí)行效果不變,如執(zhí)行過程中發(fā)生錯誤,則只返回錯誤報告,但程序還是

會執(zhí)行。

比如:

dir c:\;d:\e:\;f:\

以上命令相當(dāng)于

dir c:\
dir d:\
dir e:\
dir f:\
但是前面執(zhí)行的盤不存在的話,后面的命令將不會執(zhí)行。

例如:C:\>dir w:;d: /p;e: /p
結(jié)果為:系統(tǒng)找不到指定的路徑。

10.在echo的后面加一個點,所起到的作用是顯示一空行。

以下范例顯示的批處理程序包含前后各有一個空行的三行消息:

@echo off
echo.
echo This batch program
echo formats and checks
echo new disks
echo.

如果想讓打開的批處理命令的標(biāo)題欄有名字的話可以用到title這個參數(shù)

title filename
“>nul 2>nul”可以屏蔽一切屏幕的輸出,例如:dir >nul 2>nul這樣屏幕上什么都不會輸出,也就是沒有結(jié)果。

1>nul 表示將正確執(zhí)行目錄樹的信息禁止輸出,2>nul 表示將執(zhí)行過程中的錯誤信息禁止輸出。
斷開網(wǎng)絡(luò)連接方法有兩種:一種是rasphone /h adsl,另一種是rasdial adsl /d
11.goto一般和:是聯(lián)用的goto跳轉(zhuǎn)的地方入口就是”:”。goto命令的另一種用法一:提前結(jié)束程序。在程序中間使用goto命令跳轉(zhuǎn)到

某一標(biāo)簽,而這一標(biāo)簽的內(nèi)容卻定義為退出。如:
……
goto end
……
:end
dir中有些命令是要牢記的
dir d: /s /p /b (/a這后面還有一些參數(shù)像h,r,d,s/d)具體的可以看幫助
%userprofile%在寫批處理時這個相當(dāng)于C:\Documents and Settings\Administrator

在結(jié)束關(guān)鍵進(jìn)程的時候,要先結(jié)束explorer.exe這個進(jìn)程,最好用系統(tǒng)自帶的工具taskkill這個關(guān)explorer.exe的時候任何殺毒軟件

都沒有提示,但是如果換成了用ntsd關(guān)的話,卡巴斯基會報毒,而且這時的explorer會在關(guān)閉的一下后馬上自啟動,而taskkill就會

一直關(guān)著直到等你開啟為止。

在使用for 的時候當(dāng)用到 /d時,那是因為set中有* ?這兩個通配符
shift

1.可替代參數(shù)的編號是%o-%9,如果要在一個命令行上使用超過10個可以被代換的參數(shù),則可使用SHIFT命令來突破此限制。
2.每當(dāng)執(zhí)行sHIFT一次,命令行上的所有參數(shù)將向左移動一位。%1的內(nèi)容將為%2的內(nèi)容所取代…,%9內(nèi)容則由新的參數(shù)取代。
3.%o表示批處理文件本身的名稱,永遠(yuǎn)不變,所以每次執(zhí)行時可以在批處理文件使用一次shift就向右移動一位,例如:

a.bat的內(nèi)容:

@echo %1 %2 %3 %4 %5 %6 %7 %8 %9
shift
@echo %1 %2 %3 %4 %5 %6 %7 %8 %9
shift
@echo %1 %2 %3 %4 %5 %6 %7 %8 %9
pause

運(yùn)行
c:\>a 1 2 3 4 5 6 7 8 9 10 11(其后有11個參數(shù))
1 2 3 4 5 6 7 8 9 (取到最前面9個參數(shù))
c:\>shift (移位)
2 3 4 5 6 7 8 9 10 11(取到另外9個參數(shù))
c:\>shift (移位)
3 4 5 6 7 8 9 10 (取到另外9個參數(shù))
在批處理中del /f /s /q可以刪除指定目錄下的任何文件,但是不能刪除文件夾,rd /s /q不但可以刪除指定目錄下的文件夾而且還

可以刪除目錄下的所有文件,以前總是以為rd只能刪除文件夾,現(xiàn)在才知道用這個命令還以刪除文件夾
@echo off @echo off
:top :top
if (%1)==() goto end if (%1)==()goto end
shift shift
echo still running echo still running
goto top goto top
:end :end

看到了吧!兩個程序就是第三行的goto前面不一樣,第一個有一個空格,而第二個沒有,就是這個空格所產(chǎn)生的結(jié)果就不一樣,第一

個結(jié)果是三行still running,而第二個結(jié)果是一個無限制的循環(huán),一直不停的顯示still running,所以寫程序的時候一定要注意
errorlevel
若一個程序或DOS命令執(zhí)行成功,則返回的E只RORLEVEL的值為o,否則為1至255之間AscII值的任意整數(shù),其值只占一個字節(jié)約內(nèi)存

空間,值得注意的是IF語句中檢驗的ERRORLEVEL值是大于或等于而不是等于,例如語句IF ERRORLEVEL 5檢驗的是ERRORLEVEL>=5而

不是ERRORLEVEL=5,因此對于5至255之間的任何整數(shù),此語句檢驗結(jié)果都是真值。
在變量延遲時要用到setlocal EnableDelayedExpansion
例如:
@echo off
setlocal EnableDelayedExpansion
…….
然后寫要用的代碼

需要注意的是,一旦啟用了變量延遲,就要用!號把變量括起來,而不能用%號。

echo !n!
顯示變量n的值

例如:
@echo off &SETLOCAL ENABLEDELAYEDEXPANSION
set mm=gril&echo !mm!
pause

ping 在批處理中有延時的作用,開始的時候不知道怎么用,后來才發(fā)現(xiàn),每ping一次的時間是一秒,所以寫成ping /n 10 127.1或者

是ping /n 10 localhost效果是一樣的,都能起來延時十秒的作用
set

SET /A expression
環(huán)境變量替換已如下增強(qiáng):
%PATH:str1=str2%
%PATH:~10,5%
%PATH:~-10%
%PATH:~0,-2%

%PATH:str1=str2%這個操作就是把變量%PATH%的里的str1全部用str2替換

例如:
@echo off
set a= bbs.verybat.cn
echo 替換前的值: “%a%”
set var=%a: =qq%
echo 替換后的值: “%var%”
pause

結(jié)果是:替換前的值: ” bbs.verybat.cn” 很明顯吧,那個空格被qq給代替啦^-^
替換后的值: “qqbbs.verybat.cn”
請按任意鍵繼續(xù). . .
@echo off
set a=bbs.verybat.cn
echo 替換前的值: “%a%”
set var=%a:.=傷腦筋%
echo 替換后的值: “%var%”
pause

解釋set var=%a:.=傷腦筋%
set命令 var變量名 字a是要進(jìn)行字符替換的變量的值,”.”為要替換的值,
“傷腦筋”為替換后的值!
執(zhí)行后就會把變量%a%里面的”.”全部替換為”傷腦筋”
這就是set的替換字符的很好的功能!先講到這
%PATH:~10,5%

@echo off
set a=bbs.verybat.cn
set var=%a:~1,2%
echo %var%
pause

執(zhí)行后,我們會發(fā)現(xiàn)只顯示了”bs”兩個字母,我們的變量%a%的值不是為bbs.verybat.cn嗎
怎么只顯示了第2個字母和第3個字母”bs”,分析一結(jié)果我們就可以很容易看出
%PATH:~10,5%就是顯示變量PATH里指定幾位的值!
分析set var=%a:~1,2%
set命令 var變量值 a要進(jìn)行字符操作的變量 “1″從變量”a”第幾位下一位開始顯示 “2″顯示幾位
和起來就是把變量a的值從第一位開始,把后兩位賦予給變量var

%PATH:~-10% 例子

@echo off
set a=bbs.verybat.cn
set var=%a:~-3%
echo %var%
pause
這個的意思是從右往左取三位,把取到的部分給了var ,如果把負(fù)號去掉,就成了從左往右去掉三位把剩下的部分給了var

%PATH:~0,-2% 例子

@echo off
set a=bbs.verybat.cn
set var=%a:~4,-3%
echo %var%
pause

結(jié)果是verybat,這段代碼的意思是,從右去掉三位,把左剩余的部分,從第四位的下一位開始顯示,把顯示的內(nèi)容給了var

如果改成set var=%a:~3,-3%結(jié)果就是.verybat

延遲和set的綜合應(yīng)用:

@echo off
setlocal enabledelayedexpansion

title I Love Greatwall
set love=I Love Greatwall Forever

for /l %%i in (1,1,24) do (cls
echo. !love:~0,%%i!
ping/n 1 127.1>nul 2>nul)
pause

我覺得這段代碼很意思,do里面的命令主要是分三塊但是這三塊不能在同一行,分三行寫.因為它們是不同的命令,要想寫在一行的

話要加&,寫好后為for /l %%i in (1,1,24) do (cls &echo. !love:~0,%%i! &ping/n 1 127.1>nul 2>nul)
for
在DOs提示符下可直接使用FOR語句,用法的區(qū)別在于必須把%%variable寫成%variable

關(guān)于FOR語句的使用方法,歸納如下:
(1)為了在各種DOS版本下都能運(yùn)行,%%vart6le的變量必須為單個字符,應(yīng)避
免使用%%o一%%9作為變量。
(2)FOR%%variaNeIN tnle s就)command%%variable其中File set必須放在
括號內(nèi),文件的個數(shù)沒有限制,只要不超過D05命令行127個字符的限制即可,文件之
間用空格或逗號作為分隔符分開,文件名可以使用通配符。
(3)FoR語句中后面的變量有時可省略,如:
FOR%%a IN(*.BAK)D0 DIR
(4)FOR語句的結(jié)尾如果執(zhí)行另一個批處理程序,執(zhí)行結(jié)束后,不再返回FOR語

FOR /D %%variable IN (set) DO command /D參數(shù)只能顯示當(dāng)前目錄下的目錄名字

@echo off
for /d %%i in (*) do @echo %%i
pause
把他保存放在C盤根目錄執(zhí)行,就會把C盤目錄下的全部目錄名字打印出來,而文件名字一個也不顯示!

@echo off
for /d %%i in (???) do @echo %%i
pause
這樣的話如果你當(dāng)前目錄下有目錄名字只有1-3個字母的,就會顯示出來,沒有就不顯示了

這里解釋下*號和?號的作用,*號表示任意N個字符,而?號只表示任意一個字符

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

它可以把當(dāng)前或者你指定路徑下的文件名字全部讀取,注意是文件名字

@echo off
for /r c:\ %%i in (*.exe) do @echo %%i
pause

把C盤根目錄,和每個目錄的子目錄下面全部的EXE文件都列出來了
@echo off
for /r %%i in (*.exe) do @echo %%i
pause

以當(dāng)前目錄為搜索路徑,顯示當(dāng)前目錄的全部EXE文件列出來!
for /L %% Variable in (Start#,Step#,End#) do Command

@echo off
for /l %%i in (1,1,5) do start cmd
pause

看上面的start step end就知道是什么意思了吧,開始,結(jié)束,步階,按一步一個的話,就會總有六個cmd跳出來五個
設(shè)置默認(rèn)的控制臺前景和背景顏色。
for /F “ParsingKeywords” %% Variable in (FileNameSet) do Command

“ParsingKeywords”
它表示4個參數(shù)
eol=c - 指一個行注釋字符的結(jié)尾(就一個)
skip=n - 指在文件開始時忽略的行數(shù)。
delims=xxx - 指分隔符集。這個替換了空格和跳格鍵的
默認(rèn)分隔符集。
tokens=x,y,m-n - 指每行的哪一個符號被傳遞到每個迭代
的 for 本身。這會導(dǎo)致額外變量名稱的分配。m-n
格式為一個范圍。通過 nth 符號指定 mth。如果
符號字符串中的最后一個字符星號,
那么額外的變量將在最后一個符號解析之后
分配并接受行的保留文本。
usebackq - 指定新語法已在下類情況中使用:
在作為命令執(zhí)行一個后引號的字符串并且一個單
引號字符為文字字符串命令并允許在 filenameset
中使用雙引號擴(kuò)起文件名稱。
例如:新建一個文件名字為test.txt
內(nèi)容為:
;哈哈
你好!相信自己一定會成功……
Never Say Die
好啦就這樣吧

@echo off
FOR /F “eol=; tokens=1 delims= ” %%i in (test.txt) do @echo %%i
pause

你好!相信自己一定會成功……
Never
好啦就這樣吧

這個命令會讀取在當(dāng)前目錄下名為test.txt文件中的內(nèi)容,然后將每一行的內(nèi)容賦值給變量%%i,然后忽略掉以;號開頭的行,并且以空

格做為分隔符號,打印第每行以空各做分隔符號的第一列

又例如:
@echo off
for /f “tokens=3 delims=- ” %%a in (’date /t’) do @echo %%a
pause

date /t的結(jié)果是:2007-08-22 星期三
所以批處理的結(jié)果為:22

@echo off
for /f “tokens=2,3,4 delims=-” %%a in (’date /t’) do @echo %%c-%%a-%%b
pause
結(jié)果為:-08-22 星期三

總結(jié):以上兩個的結(jié)果都是從date /t中以”-”為分隔符,從左往右依次取第三列(這就是第一個的結(jié)果22),第二,三,四列(這就是

第二個的結(jié)果-08-22 星期三),這個for以后的用處還很大.
FOR的變量全部列出來:凡是 %~ 開頭的操作符,都是文件名的分離操作

~I - 刪除任何引號(”),擴(kuò)展 %I

這個變量的作用就如他的說明,刪除引號!
我們來看這個例子:

首先我們在桌面建立一個名字為temp.txt文本文件,在里面輸入這些內(nèi)容
“1111
2222″
“3333″
44″44
然后在建立個BAT文件代碼如下:

FOR /F “delims=” %%i IN (temp.txt) DO @echo %%~i
pause

執(zhí)行后,我們看CMD的回顯如下:
1111
2222″
3333
44″44
和之前temp.txt中的內(nèi)容對比一下,我們會發(fā)現(xiàn)第一行和第三行的引號都消失了,這就是刪除引號~i的作用了!
刪除引號規(guī)則如下(BAT兄補(bǔ)充!)
1、若字符串首尾同時存在引號,則刪除首尾的引號;
2、若字符串尾不存在引號,則刪除字符串首的引號;
3、如果字符串中間存在引號,或者只在尾部存在引號,則不刪除
%~fI - 將 %I 擴(kuò)展到一個完全合格的路徑名

FOR /F “delims==” %%i IN (’dir /b’) DO @echo %%~fi
pause

執(zhí)行后顯示內(nèi)容如下
C:\Documents and Settings\Administrator\桌面\test.bat
C:\Documents and Settings\Administrator\桌面\test.vbs
當(dāng)我把代碼中的 %%~fi直接改成%%i
FOR /F “delims==” %%i IN (’dir /b’) DO @echo %%i
pause

執(zhí)行后就會顯示這些內(nèi)容
test.bat
test.vbs

%~dI - 僅將 %I 擴(kuò)展到一個驅(qū)動器號

FOR /F “delims==” %%i IN (’dir /b’) DO @echo %%~di
pause
執(zhí)行后我CMD里顯示如下
C:
C:
%%~di作用是,如果變量%%i的內(nèi)容是一個文件或者目錄名,那么%%~di就會把%%i這文件或者目錄所在的盤符號打印出來!

%~pI - 僅將 %I 擴(kuò)展到一個路徑

這個用法和上面一樣,他只打印路徑不打印文件名字
FOR /F “delims==” %%i IN (’dir /b’) DO @echo %%~pi
pause

\Documents and Settings\Administrator\桌面\

%~nI - 僅將 %I 擴(kuò)展到一個文件名

只打印文件名字
FOR /F “delims==” %%i IN (’dir /b’) DO @echo %%~ni
pause

test

%~xI - 僅將 %I 擴(kuò)展到一個文件擴(kuò)展名

只打印文件的擴(kuò)展名
FOR /F “delims==” %%i IN (’dir /b’) DO @echo %%~xi
pause

.vbs
.bat
.txt
.txt
.txt

%~sI - 擴(kuò)展的路徑只含有短名

打印絕對短文件名
FOR /F “delims==” %%i IN (’dir /b’) DO @echo %%~si
pause

C:\DOCUME~1\ADMINI~1\桌面\a.vbs
C:\DOCUME~1\ADMINI~1\桌面\a2.bat
C:\DOCUME~1\ADMINI~1\桌面\q.txt
C:\DOCUME~1\ADMINI~1\桌面\test.txt
C:\DOCUME~1\ADMINI~1\桌面\_討論_~1.TXT
C:\DOCUME~1\ADMINI~1\桌面\常用工具

%~aI - 將 %I 擴(kuò)展到文件的文件屬性

打印文件的屬性
FOR /F “delims==” %%i IN (’dir /b’) DO @echo %%~ai
pause

–a——
–a——
–a——
–a——
–a——
dr——-

%~tI - 將 %I 擴(kuò)展到文件的日期/時間

打印文件建立的日期
FOR /F “delims==” %%i IN (’dir /b’) DO @echo %%~ti
pause

2007-08-21 12:30
2007-08-22 18:40
2007-08-22 12:31
2007-08-22 17:58
2007-08-19 23:23
2007-08-16 14:28

%~zI - 將 %I 擴(kuò)展到文件的大小

打印文件的大小
FOR /F “delims==” %%i IN (’dir /b’) DO @echo %%~zi
pause

76
439
558
64
34614
0
最后一個不是個文件而是一個文件夾,所以顯示為0,其實不為0的

%~$PATH:I - 查找列在路徑環(huán)境變量的目錄,并將 %I 擴(kuò)展
到找到的第一個完全合格的名稱。如果環(huán)境變量名
未被定義,或者沒有找到文件,此組合鍵會擴(kuò)展到
空字符串

我們先在桌面建立一個temp.txt文件,里面寫上這些內(nèi)容
c:\windows
c:\windows\system32
c:\windows\teett

然后在把這些代碼保存為批處理,放在桌面.
FOR /F “delims==” %%i IN (temp.txt) DO @echo %%~$PATH:i
pause

執(zhí)行后CMD顯示如下內(nèi)容
c:\WINDOWS
c:\WINDOWS\system32
ECHO 處于打開狀態(tài)。

為什么會這樣呢,還有一行c:\windows\teett呢?
我們直接在CMD里輸入echo %path% 會顯示C:\WINDOWS\system32;C:\WINDOWS;C:\WINDOWS\System32\Wbem
%%~$PATH:i也就是在文本里尋找匹配這個PATH變量值的內(nèi)容,如果里面的內(nèi)容和PATH變量相同,就打印出來
如果不相同,就顯示一個空行!

COLOR [attr]

attr 指定控制臺輸出的顏色屬性

顏色屬性由兩個十六進(jìn)制數(shù)字指定 — 第一個為背景,第二個則為
前景。每個數(shù)字可以為以下任何值之一:

0 = 黑色 8 = 灰色
1 = 藍(lán)色 9 = 淡藍(lán)色
2 = 綠色 A = 淡綠色
3 = 湖藍(lán)色 B = 淡淺綠色
4 = 紅色 C = 淡紅色
5 = 紫色 D = 淡紫色
6 = 黃色 E = 淡黃色
7 = 白色 F = 亮白色

如果沒有給定任何參數(shù),該命令會將顏色還原到 CMD.EXE 啟動時
的顏色。這個值來自當(dāng)前控制臺窗口、/T 開關(guān)或
DefaultColor 注冊表值。

如果用相同的前景和背景顏色來執(zhí)行 COLOR 命令,COLOR 命令

echo test>test\x.txt 這句的意思是在test文件夾下往x.txt中寫入test
FIND [/V] [/C] [/N] [/I] [/OFF[LINE]] “string” [[drive:][path]filename[ ...]]

/V 顯示所有未包含指定字符串的行。
/C 僅顯示包含字符串的行數(shù)。
/N 顯示行號。
/I 搜索字符串時忽略大小寫。
/OFF[LINE] 不要跳過具有脫機(jī)屬性集的文件。
“string” 指定要搜索的文字串,
[drive:][path]filename
指定要搜索的文件。
REG ADD KeyName [/v ValueName | /ve] [/t Type] [/s Separator] [/d Data]

KeyName [\\Machine\]FullKey
遠(yuǎn)程機(jī)器的機(jī)器名 - 忽略默認(rèn)到當(dāng)前機(jī)器。
遠(yuǎn)程機(jī)器上只有 HKLM 和 HKU。
FullKey ROOTKEY\SubKey
ROOTKEY [ HKLM | HKCU | HKCR | HKU | HKCC ]
SubKey 所選 ROOTKEY 下注冊表項的完整名

/v 所選項之下要添加的值名

/ve 為注冊表項添加空白值名<無名稱>

/t RegKey 數(shù)據(jù)類型
[ REG_SZ | REG_MULTI_SZ | REG_DWORD_BIG_ENDIAN |
REG_DWORD | REG_BINARY | REG_DWORD_LITTLE_ENDIAN |
REG_NONE | REG_EXPAND_SZ ]
如果忽略,則采用 REG_SZ

/s 指定一個在 REG_MULTI_SZ 數(shù)據(jù)字符串中
用作分隔符的字符
如果忽略,則將 “” 用作分隔符

/d 要分配給添加的注冊表 ValueName 的數(shù)據(jù)

/f 不用提示就強(qiáng)行改寫現(xiàn)有注冊表項

例如:

REG ADD \\ABC\HKLM\Software\MyCo
添加遠(yuǎn)程機(jī)器 ABC 上的一個注冊表項 HKLM\Software\MyCo

REG ADD HKLM\Software\MyCo /v Data /t REG_BINARY /d fe340ead
添加一個值(名稱: Data,類型: REG_BINARY,數(shù)據(jù): fe340ead)

REG ADD HKLM\Software\MyCo /v MRU /t REG_MULTI_SZ /d faxmail
添加一個值(名稱: MRU,類型: REG_MUTLI_SZ,數(shù)據(jù): faxmail)

REG ADD HKLM\Software\MyCo /v Path /t REG_EXPAND_SZ /d %%systemroot%%
添加一個值(名稱: Path,類型: REG_EXPAND_SZ,數(shù)據(jù): %systemroot%)
注意: 在擴(kuò)充字符串中使用雙百分比符號( %% )

設(shè)置屏幕每行顯示字符數(shù)和每屏的行數(shù) 例如∶  MODE CONt COLS=80 LINES=25
如果要在批處理中生成一個空的文本文件可以這樣寫

type nul>a.txt

find的參數(shù):
/C 僅顯示包含字符串的行數(shù)。
/N 顯示行號。
/I 搜索字符串時忽略大小寫。
這三個是常用的
if和else必須在一行之上,比較運(yùn)算符有
大于 gtr
大于等于 geq
等于 equ或者==
小于等于 leq
小于 lss
else和if必須在一行之上,如果有else部分的話,else前面的command部分必須用()括起來。

FINDSTR正則表達(dá)式的基本用法

1.findstr . 2.txt 或 Findstr “.” 2.txt
從文件2.txt中查找任意字符,不包括空字符或空行
====================

2.findstr .* 2.txt 或 findstr “.*” 2.txt
從文件2.txt中查找任意字符包括空行和空字符
====================

3.findstr “[0-9]” 2.txt
從文件2.txt中查找包括數(shù)字0-9的字符串或行
====================

4.findstr “[a-zA-Z]” 2.txt
從文件2.txt中查找包括任意字符的字符串或行
====================

5.findstr “[abcezy]” 2.txt
從文件2.txt中查找包括a b c e z y字母的字符串或行
====================

6.findstr “[a-fl-z]” 2.txt
從文件2.txt中查找小寫字符a-f l-z的字符串,但不包含g h I j k這幾個字母。
====================

7.findstr “M[abc][hig]Y” 2.txt
從文件2.txt中可以匹配 MahY , MbiY, MahY等…..
====================

8. ^和$符號的應(yīng)用
^ 表示行首,”^step”僅匹配 “step hello world”中的第一個單詞
$ 表示行尾,”step$”僅匹配 “hello world step”中最后一個單詞
====================

9.finstr “[^0-9]” 2.txt
如果是純數(shù)字的字符串或者行便過濾掉,例如2323423423 這樣的字符串,如果是345hh888這樣的形式就不成了。
====================

10.findstr “[^a-z]” 2.txt
同上,如果是純字母的字符串或者行便過濾掉,例如 sdlfjlkjlksjdklfjlskdf這樣的字符,如果是sdfksjdkf99999這樣的形式,摻

雜著數(shù)字就不成了
====================

11.*號的作用
前面已經(jīng)說過了 “.*”表示搜索的條件是任意字符,*號在正則表達(dá)式中的作用不是任何字符,而是表示左側(cè)字符或者表達(dá)式的重復(fù)次

數(shù),*號表示重復(fù)的次數(shù)為零次或者多次。
====================

12.findstr “^[0-9]*$” 2.txt
這個是匹配找到的純數(shù)字,例如 234234234234,如果是2133234kkjl234就被過濾掉了。
Findstr “^[a-z]*$” 2.txt
這個是匹配找到的純字母,例如 sdfsdfsdfsdf,如果是213sldjfkljsdlk就被過濾掉了
如果在搜索條件里沒有*號,也就是說不重復(fù)左側(cè)的搜索條件,也就是[0-9] [a-z]那只能匹配字符串的第一個字符也只有這一個字符

,因為有行首和行尾的限制,”^[0-9]$”第一個字符如果是數(shù)字就匹配,如果不是就過濾掉,如果字符串是 9 就匹配,如果是98或者

9j之類的就不可以了。
=====================

13. “\<…\>”這個表達(dá)式的作用
這個表示精確查找一個字符串,\<sss 表示字的開始位置,sss\>表示字的結(jié)束位置
echo hello world computer|findstr “\<computer\>”這樣的形式
echo hello worldcomputer|findstr “\<computer\>” 這樣的形式就不成了,他要找的是 “computer”這個字符串,所以不可以。
echo hello worldcomputer|findstr “.*computer\>”這樣就可以匹配了

所學(xué)知識的應(yīng)用:

@echo off
reg add HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Run /v 該休息啦.bat /t reg_sz >nul
@echo off
:start
for /f “delims=: tokens=2″ %%i in (’systeminfo ^| findstr “系統(tǒng)啟動時間”‘) do set a=%%i
set var=%a:~2,1%
if var geq 2 (goto alert) else goto start
:alert
echo msgbox “該休息啦”>alert.vbs
call alert
del /f/q alert.vbs,time.txt
pause
這個是我自己寫的,其實也沒有什么用就是把自己的東西串一下,從這段代碼中我學(xué)到了不少東西,在if的時候一定記得要在else前

的command加括號,還有就是^的使用,看看上面,它就是顯示它后面的符號,使它們失去功能,還有好多,呵呵,都在程序里啦。
還有就是pan斷大小的使用
其中,比較運(yùn)算符可以是:

equ - 等于
neq - 不等于
lss - 小于
leq - 小于或等于
gtr - 大于
geq - 大于或等于

在一行上寫上三個echo.相當(dāng)于空三行echo.&echo.&echo.這是正確的格式,就是空三行

SET /P verybat= 請選擇要進(jìn)行的操作:
IF /I “%verybat:~0,1%”==”1″ GOTO 1
IF /I “%verybat:~0,1%”==”2″ GOTO 2

@echo off
echo 正在準(zhǔn)備生成加密的jpg圖片
echo 請將要加密的圖片改名為1.jpg
echo 請將要密語保存為2.txt
echo 按任意鍵開始加密
pause
Copy 1.jpg/b + 2.txt/a 3.jpg
echo 加密結(jié)束
echo 程序?qū)⑸杉用軋D片3.jpg
pause
以上是圖片加密的代碼,看看很簡單的吧呵呵
用到了copy的參數(shù)
COPY [/D] [/V] [/N] [/Y | /-Y] [/Z] [/A | /B ] source [/A | /B]
[+ source [/A | /B] [+ ...]] [destination [/A | /B]]

source 指定要復(fù)制的文件。
/A 表示一個 ASCII 文本文件。
/B 表示一個二進(jìn)位文件。
/D 允許解密要創(chuàng)建的目標(biāo)文件
destination 為新文件指定目錄和/或文件名。
/V 驗證新文件寫入是否正確。
/N 復(fù)制帶有非 8dot3 名稱的文件時,
盡可能使用短文件名。
/Y 不使用確認(rèn)是否要改寫現(xiàn)有目標(biāo)文件
的提示。
/-Y 使用確認(rèn)是否要改寫現(xiàn)有目標(biāo)文件
的提示。
/Z 用可重新啟動模式復(fù)制已聯(lián)網(wǎng)的文件。

命令行開關(guān) /Y 可以在 COPYCMD 環(huán)境變量中預(yù)先設(shè)定。
這可能會被命令行上的 /-Y 替代。除非 COPY
命令是在一個批文件腳本中執(zhí)行的,默認(rèn)值應(yīng)為
在改寫時進(jìn)行提示。

要附加文件,請為目標(biāo)指定一個文件,為源指定
數(shù)個文件(用通配符或 file1+file2+file3 格式)。

 

文章來源于網(wǎng)絡(luò):

http://www.zhztk.com/a/xitongjiagou/windowsxitong/batjiaoben/2010/0729/344.html

本站僅提供存儲服務(wù),所有內(nèi)容均由用戶發(fā)布,如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請點擊舉報
打開APP,閱讀全文并永久保存 查看更多類似文章
猜你喜歡
類似文章
DOS批處理高級教程:第一章 批處理基礎(chǔ)
批處理學(xué)習(xí):for語句詳解【經(jīng)典】
批處理命令
DOS批處理高級教程精選(四) - 第二天堂
windows批處理 (cmd/bat) 編程詳解
批處理教程:FOR入門與進(jìn)階秘籍
更多類似文章 >>
生活服務(wù)
熱點新聞
分享 收藏 導(dǎo)長圖 關(guān)注 下載文章
綁定賬號成功
后續(xù)可登錄賬號暢享VIP特權(quán)!
如果VIP功能使用有故障,
可點擊這里聯(lián)系客服!

聯(lián)系客服