線上訂房服務-台灣趴趴狗聯合訂房中心
發文 回覆 瀏覽次數:4149
推到 Plurk!
推到 Facebook!

Batch File??

 
jlamlsc
初階會員


發表:55
回覆:60
積分:28
註冊:2002-06-21

發送簡訊給我
#1 引用回覆 回覆 發表時間:2002-07-04 13:00:11 IP:218.102.xxx.xxx 未訂閱
請問各位高手,'Batch File'是什麼東西??~
andersonhsieh
版主


發表:33
回覆:531
積分:439
註冊:2002-06-10

發送簡訊給我
#2 引用回覆 回覆 發表時間:2002-07-04 13:02:41 IP:211.20.xxx.xxx 未訂閱
引言: 請問各位高手,'Batch File'是什麼東西??~
以前dos下的.bat檔 @@~~飛翔在天際的精靈~~@@
------
@@~~飛翔在天際的精靈~~@@
jlamlsc
初階會員


發表:55
回覆:60
積分:28
註冊:2002-06-21

發送簡訊給我
#3 引用回覆 回覆 發表時間:2002-07-04 14:27:59 IP:218.102.xxx.xxx 未訂閱
引言:
引言: 請問各位高手,'Batch File'是什麼東西??~
以前dos下的.bat檔 @@~~飛翔在天際的精靈~~@@
那請問是如何編寫的?而且它有什麼用途~?
andersonhsieh
版主


發表:33
回覆:531
積分:439
註冊:2002-06-10

發送簡訊給我
#4 引用回覆 回覆 發表時間:2002-07-04 14:40:18 IP:211.20.xxx.xxx 未訂閱
引言:
引言:
引言: 請問各位高手,'Batch File'是什麼東西??~
以前dos下的.bat檔 @@~~飛翔在天際的精靈~~@@
那請問是如何編寫的?而且它有什麼用途~?
顧名思義就是批次檔,就是用來批次執行一些命令及執行檔 大部份用來做一些日常都要做的一些煩瑣的事情,如開始時將某一目錄下的檔案copy到某一目錄去等等 @@~~飛翔在天際的精靈~~@@
------
@@~~飛翔在天際的精靈~~@@
jlamlsc
初階會員


發表:55
回覆:60
積分:28
註冊:2002-06-21

發送簡訊給我
#5 引用回覆 回覆 發表時間:2002-07-04 16:30:03 IP:218.102.xxx.xxx 未訂閱
引言:
引言:
引言:
引言: 請問各位高手,'Batch File'是什麼東西??~
以前dos下的.bat檔 @@~~飛翔在天際的精靈~~@@
那請問是如何編寫的?而且它有什麼用途~?
顧名思義就是批次檔,就是用來批次執行一些命令及執行檔 大部份用來做一些日常都要做的一些煩瑣的事情,如開始時將某一目錄下的檔案copy到某一目錄去等等 @@~~飛翔在天際的精靈~~@@
請問是如何編寫的?
china20
一般會員


發表:1
回覆:19
積分:4
註冊:2002-04-15

發送簡訊給我
#6 引用回覆 回覆 發表時間:2002-07-04 16:40:48 IP:211.23.xxx.xxx 未訂閱
您要用delphi 寫嗎? 在file/new 下有個Batch file 的 物件. 或是用筆記本寫下您的功能後存成 .bat即可
jlamlsc
初階會員


發表:55
回覆:60
積分:28
註冊:2002-06-21

發送簡訊給我
#7 引用回覆 回覆 發表時間:2002-07-04 23:17:48 IP:203.218.xxx.xxx 未訂閱
引言: 您要用delphi 寫嗎? 在file/new 下有個Batch file 的 物件. 或是用筆記本寫下您的功能後存成 .bat即可
但是我不懂語法喔~.. 各位高手可以教教我嗎?~
hagar
版主


發表:143
回覆:4056
積分:4445
註冊:2002-04-14

發送簡訊給我
#8 引用回覆 回覆 發表時間:2002-07-05 08:13:07 IP:211.22.xxx.xxx 未訂閱
在網路上找到一篇, 參考看看: ┌─────────────────────────────────┐ │ ▁▂▃▄▅▆▇█▇▆ 增 強 批 次 檔 ▆▇█▇▆▅▄▃▂▁│ │ │ │ 2.02 版 Free Registered 1991-92 by 李 棟 樑│ └─────────────────────────────────┘ 命令列用法 : BATMENU [批次檔名稱] [功能] [批次檔名稱] 批次檔案名稱 (包含路徑及檔案全名) [功能] 改變初始設定值 (可以省略) /B:nnnn 設定緩衝區為 nnnn 位元組 預設值為 6400 位元組 (最大為 64K) /R:nnn 設定最大 REM BAT/ 之行數為 nnn 行 預設值為 512 行 (最大為 32K) 批次檔格式 : BATMENU 會讀取批次檔中以 REM BAT/ 開頭之行,作為各種參數之設定, 以及選項之內容,用以區別批次檔中其他之註解,其參數如下: rem bat/英文開始 或 rem bat/ENGLISH_BEGIN 在此參數行下的 rem bat/ ,其後面的文字即為英文選項之內容, 直到 rem bat/英文結束 或 rem bat/ENGLISH_END 為止。 rem bat/英文結束 或 rem bat/ENGLISH_END 參考 rem bat/英文開始 。 rem bat/中文開始 或 rem bat/CHINESE_BEGIN 在此參數行下的 rem bat/ ,其後面的文字即為中文選項之內容, 直到 rem bat/中文結束 或 rem bat/CHINESE_END 為止。 rem bat/中文結束 或 rem bat/CHINESE_END 參考 rem bat/中文開始 。 rem bat/靠左 或 rem bat/LEFT 設定選項資料靠左顯示。 rem bat/靠右 或 rem bat/RIGHT 設定選項資料靠右顯示。 rem bat/對中 或 rem bat/CENTER 設定選項資料對中顯示。此參數為預定值。 rem bat/跳離時間: 或 rem bat/跳離時間: 或 rem bat/EXITTIME: 設定若無鍵盤輸入的跳離時間,單位為秒,值為冒號後面之數值,請用半形。 預設值為 30 秒。若設定值為 0 則不會自動跳離。 rem bat/英文跳離值: 或 rem bat/英文跳離值: 或 rem bat/EEXITCODE: 設定無鍵盤輸入跳離時,在英文模式下,傳回DOS的 ExitCode , 值為冒號後面之數值,請用半形。預設值為 0 。 rem bat/中文跳離值: 或 rem bat/中文跳離值: 或 rem bat/CEXITCODE: 設定無鍵盤輸入跳離時,在中文模式下,傳回DOS的 ExitCode , 值為冒號後面之數值,請用半形。預設值為 0 。 rem bat/英文標題: 或 rem bat/英文標題: 或 rem bat/EHEADER: 設定此批次檔之標題,最長文字為 78 Columns ,顯示時自動對中。 可以沒有標題,無預設值。 rem bat/中文標題: 或 rem bat/中文標題: 或 rem bat/CHEADER: 設定此批次檔之標題,最長文字為 78 Columns ,顯示時自動對中。 可以沒有標題,無預設值。 rem bat/欄數: 或 rem bat/欄數: 或 rem bat/COLUMN: 設定選項顯示時之欄位,最大為 5 ,值為冒號後面之數值,請用半形。 預設值為 1 。 rem bat/結束 或 rem bat/END 設定結束,在此行以下之定設定參數及其他訊息指令將不讀取,如此可 增加執行速度。也可以不加此指令。 【 註一 】:參數之大小寫均可。 【 註二 】:若使用中文系統,目前此程式只支援倚天中文系統。 歡迎多加推廣及拷貝,謝謝您的愛用。 ====================================================================== 批次檔之常用語法: ┌────┬────────┬─────────────────────┐ │ 指 令 │ 使 用 方 法 │ 說 明 │ ├────┼────────┼─────────────────────┤ │@ │@指令 │在此符號開頭之指令不會顯示在螢幕上。 │ │echo │echo off │表示以下的指令不會顯示在螢幕上。 │ │ │echo on │表示以下的指令會顯示在螢幕上 │ │ │echo 訊息字串 │在螢幕上顯示此訊息字串。 │ │if │if 條件 執行動作│當條件成立時,則執行動作。 │ │goto │goto 標記 │使批次檔跳到 :標記 ,再繼續執行批次檔 │ │pause │pause 訊息字串 │批次檔暫停執行,等待按鍵,並顯示此訊息 │ │%1 - %9 │ │分別代表在執行批次檔時,其後面所加的參數│ └────┴────────┴─────────────────────┘ 條件說明: ┌─────┬─────────┬───────────────────┐ │ 條件指令 │ 使 用 方 法 │ 說 明│ ├─────┼─────────┼───────────────────┤ │errorlevel│errorlevel 正整數 │當上一個在批次檔中被呼叫的執行程式的跳離值 │ │ │ │大於或等於此正整數時,條件成立。 │ │exist │exist 檔案 │若此檔案存在,則條件成立。 │ │== │變數一 == 變數二 │當變數一等於變數二時,條件成立。 │ │not │not 條件指令 │條件指令之反運算。 │ └─────┴─────────┴───────────────────┘ 詳細說明及簡單範例: 一.由於 errorlevel 是在大於或等於其後面的數值時成立,所以其排列順序需顛倒,例: ------- begin of SCANV.BAT ------------------------------------------- @echo off echo. The following demo is for 此批次檔範例程式須配合 echo. MeAfee Associates SCAN MeAfee 公司出的 SCAN 掃毒軟體。 scan %1 %2 %3 %4 %5 %6 %7 %8 %9 if '%1'=='' goto END if errorlevel 4 goto 4 if errorlevel 3 goto 3 if errorlevel 2 goto 2 if errorlevel 1 goto 1 if errorlevel 0 goto 0 :0 echo. No viruses found. 恭喜您,沒有發現病毒。 goto END :1 echo. One or More viruses found. 發現病毒! 趕快用 CLEAN 清毒。 goto END :2 echo. Abnormal termination.(program error) 程式執行錯誤!請重新拷貝原版軟體。 goto END :3 echo. One or more uncertified files found. 發現未知病毒型態!快用 CLEAN 清毒。 goto END :4 echo. Ctrl-C or Ctrl-Break aborted scan. 使用者中斷 SCAN 的執行。 goto END :END ------- end of SCANV.BAT ------------------------------------------------------- 二. == , exist ,not ,pause ,%1 %2 ... 的使用: ------- begin of TYPE2.BAT ----------------------------------------------------- @echo off rem Check if Arguments present? 檢查是否有加參數? if '%1'=='' goto NO_1 if '%2'=='' goto NO_2 goto BOTH :NO_1 echo.No Argument 1 少第一項參數,也許您應該看看使用說明。 echo.USAGE: 秀出使用說明 echo. TYPE2.BAT [arg1] [arg2] echo. echo. This batch file will print 此批次檔將秀出檔案arg1 echo file arg1 (and arg2) to screen (及檔案arg2) goto END :NO_2 echo.No Argument 2 沒有第二項參數,表示只有第一項參數 rem Check if file EXIST ? 檢查檔案是否存在? echo.IF not exist %1 goto NoFIle1 若檔案 %1 不存在,則跳到 NoFile1 的標記。 if not exist %1 goto NoFile1 echo.IF exist %1 type %1 若檔案 %1 存在,則將 %1 秀出。 if exist %1 type %1 goto END :BOTH echo.Both Argument 1 and Argument 2 第一、二項參數都有 echo.IF not exist %1 goto NoFIle1 若檔案 %1 不存在,則跳到 NoFile1 的標記。 if not exist %1 goto NoFile1 echo.IF exist %1 type %1 若檔案 %1 存在,則將 %1 秀出。 if exist %1 type %1 pause Wait for User... 等您按個鍵再繼續... echo.IF not exist %2 goto NoFIle2 若檔案 %2 不存在,則跳到 NoFile2 的標記。 if not exist %2 goto NoFile2 echo.IF exist %2 type %2 若檔案 %2 存在,則將 %2 秀出。 if exist %2 type %2 goto END rem Show the File message. 秀出檔案的訊息。 :NoFile1 echo.File %1 do not exist ! 檔案 %1 不存在! goto END :NoFile2 echo.File %2 do not exist ! 檔案 %2 不存在! goto END :END ------- end of TYPE2.BAT ------------------------------------------------------- 範例一:TEST1.BAT 使用 BATMENU.EXE , PARK.BAT , LINES.EXE ------- begin of TEST1.BAT ----------------------------------------------------- @echo off rem bat/eheader:Test BatMenu ... Frame Only ... for same English & Chinese Content rem bat/exittime:10 rem bat/eexitcode:7 rem bat/english_begin rem bat/Hyper Editor rem bat/Personal Editor rem bat/Lotus 123 rem bat/dBase III rem bat/MS Window rem bat/Scan Hard Disk rem bat/Screen Protect rem bat/Park Hard Disk rem bat/english_end rem bat/中文標題:測試 BatMenu ... 只有基本架構 ... 此例之中英文內容相同 rem bat/跳離時間:10 rem bat/中文跳離值:7 rem bat/中文開始 rem bat/書 中 仙 rem bat/Lotus 123 rem bat/微軟視窗 rem bat/硬碟掃毒 rem bat/螢幕保護 rem bat/硬碟 Park rem bat/中文結束 rem bat/end batmenu test1.bat if errorlevel 6 goto PARK if errorlevel 5 goto SCR if errorlevel 4 goto SCAN if errorlevel 3 goto MSWIN if errorlevel 2 goto 123 if errorlevel 1 goto HE if errorlevel 0 goto QUIT :PARK call park.bat pause goto QUIT :SCR lines.exe goto QUIT :SCAN echo. echo.Running Scan Hard Disk ... echo. goto QUIT :MSWIN echo. echo.Running MS Window ... echo. goto QUIT :123 echo. echo.Running Lotus 123 ... echo. goto QUIT :HE echo. echo.Running Hyper Editor ... echo. goto QUIT :QUIT ------- end of TEST1.BAT ------------------------------------------------------- 範例二:TEST2.BAT 使用 BATMENU.EXE , CHECKSCR.EXE , PARK.BAT , LINES.EXE ------- begin of TEST2.BAT ----------------------------------------------------- @echo off rem 重點提示: rem 1.若想要此批次檔一直循環,則在呼叫其他批次檔時,請加上 rem call 的指令,如 call other.bat rem 2.在中英文合用,且中英文內容又不同時,若有改變中英文模式, rem 最好回到 CHECKSCR.EXE 之前,以便重新測試螢幕模式。 rem 3.在批次檔中,避免使用一些前兩位內碼或後兩位內碼為 rem 3C,3E,7C 的中文字,因為這三個字元在 DOS 下有 rem 重導、轉向輸出及連通等特殊功能,若使用這些中文字,通常將出現 rem Bad command or file name 之訊息。見註。 rem 在 REM 及 ECHO 後面亦不能使用以上之字元。 rem bat/eheader:Test BatMenu ... for defferent English & Chinese Content ... Over and Over rem bat/exittime:10 rem bat/eexitcode:6 rem bat/english_begin rem bat/ETen Chinese rem bat/Hyper Editor rem bat/Lotus 123 rem bat/MS Window rem bat/Scan Hard Disk rem bat/Screen Protect rem bat/Park Hard Disk rem bat/english_end rem bat/中文標題:測試 BatMenu ... 此例之中英文內容不相同 ... 反覆執行 rem bat/跳離時間:10 rem bat/中文跳離值:2 rem bat/中文開始 rem bat/書 中 仙 rem bat/Lotus 123 rem bat/跳離中文 rem bat/微軟視窗 rem bat/硬碟掃毒 rem bat/螢幕保護 rem bat/硬碟 Park rem bat/中文結束 rem bat/結束 :HOME checkscr nomsg if errorlevel 10 goto CHINESE if errorlevel 1 goto ENGLISH :ENGLISH batmenu test2.bat if errorlevel 7 goto E_PARK if errorlevel 6 goto E_SCR if errorlevel 5 goto E_SCAN if errorlevel 4 goto E_MSWIN if errorlevel 3 goto E_123 if errorlevel 2 goto E_HE if errorlevel 1 goto E_ET if errorlevel 0 goto E_QUIT :E_PARK call park.bat pause goto ENGLISH :E_SCR lines.exe goto ENGLISH :E_SCAN echo. echo.Running Scan Hard Disk ... echo. pause goto ENGLISH :E_MSWIN echo. echo.Running MS Window ... echo. pause goto ENGLISH :E_123 echo. echo.Running Lotus 123 ... echo. pause goto ENGLISH :E_HE echo. echo.Running Hyper Editor ... echo. pause goto ENGLISH :E_ET echo. echo.Will Calling ETen Chinese ... echo. echo.Please Set path to ET3.BAT echo. pause call et3.bat goto HOME :E_QUIT goto QUIT :CHINESE batmenu test2.bat if errorlevel 7 goto C_PARK if errorlevel 6 goto C_SCR if errorlevel 5 goto C_SCAN if errorlevel 4 goto C_MSWIN if errorlevel 3 goto C_QET if errorlevel 2 goto C_123 if errorlevel 1 goto C_HE if errorlevel 0 goto C_QUIT :C_PARK call park.bat pause goto CHINESE :C_SCR lines.exe goto HOME :C_SCAN echo. echo.執行 Scan Hard Disk ... echo. pause goto CHINESE :C_MSWIN echo. echo.將跳離中文系統 ... echo. echo.在按鍵後,若無跳離中文系統,請將 PATH 增設至倚天中文 echo. pause etctl/c:iq echo. echo.Running MS Window ... echo. pause goto HOME :C_QET echo. echo.將跳離中文系統 ... echo. echo.在按鍵後,若無跳離中文系統,請將 PATH 增設至倚天中文 echo. pause etctl/c:iq goto HOME :C_123 echo. echo.執行 Lotus 123 ... echo. pause goto CHINESE :C_HE echo. echo.執行 書中仙編輯程式 ... echo. pause goto CHINESE :C_QUIT goto QUIT :QUIT ------- end of TEST2.BAT ------------------------------------------------------- 【 註 】:前兩位內碼或後兩位內碼為3C,3E,7C 的中文字,如 [BIG-5 碼] 會└ ....... Hex Dec Char DOS 3C == 60 == < 重導、轉向輸出 3E == 62 == > 重導、轉向輸出 7C == 124 == | 連通 在 BIG-5 碼中只有可能出現 7C 也就是 | ,在工會碼及倚天碼下,就都可能出現。 ================================================================================ 商標聲明: 本說明所使用到已註冊之商標計有: ●ETen 為倚天公司的註冊商標。 ●HE (書中仙) 為銳士公司的註冊商標。 ●LOTUS 為 Lotus Development Corporation 的註冊商標。 ●MS Window 為 Microsoft 公司的註冊商標。 ●SCAN / CLEAN 為 MeAfee Associates 的註冊商標。 ================================================================================ bat 版本: 1.00 : △資料檔須外掛,使用說明放於執行檔中。 △最多可使用 85 個選項。 2.00 : △進入主選單後,將倚天中文糸統的訊息列隱藏。 △資料檔仍須外掛,但在同一資料檔中可同時有中英文資料,提供以下之指令: bat/english_begin、 bat/英文開始、 bat/english_end、 bat/英文結束、 bat/chinese_begin、 bat/中文開始、 bat/chinese_end、 bat/中文結束。 -------------------------------------------------------------------------------- batmenu 版本: 1.99 : △內定最多可使用 512 個選項,使用者可自行更改。 △提供外部說明檔。 △將資料檔與批次檔結合,並提供以下之指令: rem bat/english_begin、 rem bat/英文開始、 rem bat/english_end、 rem bat/英文結束、 rem bat/chinese_begin、 rem bat/中文開始、 rem bat/chinese_end、 rem bat/中文結束、 rem bat/left、 rem bat/靠左、 rem bat/right、 rem bat/靠右、 rem bat/center、 rem bat/對中、 rem bat/header:、 rem bat/標題:、 rem bat/標題:、 rem bat/column:、 rem bat/欄數:、 rem bat/欄數:。 △提供命令列之參數: /B:nnnn set Buffer to nnnn bytes default value is 6400 bytes /R:nnn set maximum REM line number to nnn lines default value is 512 lines 2.00 : (Nov 30,1992) △若在中文糸統下,會將螢幕自動切換至中文模式的【英數】狀態。 △使用 8 號、9 號 中斷,記錄使用者按鍵的時間間隔,並在指定的時間後 自動跳離,以執行螢幕休息、PARK 或其他指定的程式。 △提供中、英文標題。 △提供詳細的說明檔,並含有範例程式及批次檔的常用的指令。 △將資料檔與批次檔結合,並新增以下之指令: rem bat/end、 rem bat/結束、 rem bat/exittime:、 rem bat/跳離時間:、 rem bat/跳離時間:、 rem bat/EEXITCODE:、 rem bat/英文跳離值:、rem bat/英文跳離值:、 rem bat/CEXITCODE:、 rem bat/中文跳離值:、rem bat/中文跳離值:、 rem bat/eheader:、 rem bat/英文標題:、 rem bat/英文標題:、 rem bat/cheader:、 rem bat/中文標題:、 rem bat/中文標題:。 △提供命令列之參數: /B:nnnn 設定緩衝區為 nnnn 位元組 預設值為 6400 位元組 (最大為 64K) /R:nnn 設定最大 REM BAT/ 之行數為 nnn 行 預設值為 512 行 (最大為 32K) 2.01 : (Aug 24,1993) △儲存螢幕的顏色,並於執行後還原。 2.02 : (Nov 23,1993) △清除鍵盤緩衝區。 ================================================================================ 本程式 BATMENU.EXE ,以及 CHECKSCR.EXE , LINES.EXE 係利用 國立中央大學校園網路資源所組譯與連結(compile & link)完成。
hagar
版主


發表:143
回覆:4056
積分:4445
註冊:2002-04-14

發送簡訊給我
#9 引用回覆 回覆 發表時間:2002-07-05 08:17:32 IP:211.22.xxx.xxx 未訂閱
或下載這個檔案吧(其內容見上一篇): http://home.kimo.com.tw/dllee.tw/leesoft/batmenuc.txt
jlamlsc
初階會員


發表:55
回覆:60
積分:28
註冊:2002-06-21

發送簡訊給我
#10 引用回覆 回覆 發表時間:2002-07-05 18:57:58 IP:203.198.xxx.xxx 未訂閱
謝謝... 不過..的確太深奧了
系統時間:2024-04-27 7:21:45
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!