批處理檔案的編寫:
.bat是dos下的批處理檔案
.cmd是nt核心命令列環境的另一種批處理檔案
從更廣義的角度來看,unix的shell指令碼以及其它作業系統甚至應用程式中由外殼進行解釋執行的文字,都具有與批處理檔案十分相似的作用,而且同樣是由專用直譯器以行為單位解釋執行,這種文字形式更通用的稱謂是指令碼語言。所以從某個程度分析,batch, unix shell, awk, basic, perl 等指令碼語言都是一樣的,只不過應用的範圍和解釋的平台各有不同而已。甚至有些應用程式仍然沿用批處理這一稱呼,而其內容和副檔名與dos的批處理卻又完全不同。
首先批處理檔案是乙個文字檔案,這個檔案的每一行都是一條dos命令(大部分時候就好象我們在dos提示符下執行的命令列一樣),你可以使用dos下的edit或者windows的記事本(notepad)等任何文字檔案編輯工具建立和修改批處理檔案。
在這裡面常用到的命令有:
echo,當程式執行時,顯示或隱藏批處理程式中的正文。也可用於允許或禁止命令的回顯。
rem,指定要遮蔽的命令或要包含的註解。
pause,暫停批處理程式的執行並顯示一條訊息,提示使用者按任意鍵繼續執行。
if,條件語句
if exist,存在語句
goto,跳轉語句
:,標號。和goto結合使用
for,迴圈語句
%,引數的使用
下面給出我學習時的幾個例子:
一、first.bat,簡單的將d盤下的檔案列表儲存到a.txt中,並列印出一句話你好
@echo off
dir d:\*.* >a.txt
rem 列印出你好
echo 你好
pause
二、second.bat,練習if ,goto,和:,
@echo off
::如果是b.txt 則直接跳到end
if %1==b.txt goto end
rem 如果檔案存在則轉到真正的操作,否則跳到end
if exist %1 goto oktype
echo 錯誤的檔案
goto end
rem 引數正確,執行命令
:oktype
type %1
rem 結束
:end
echo 命令執行完畢
三、third.bat,練習for,顯示在執行目錄下,所有擴充套件名為*.bat *.txt *.sys的檔案
@echo off
for %%c in (*.bat *.txt *.sys) do type %%c
下面的四、五、六三個例子,是我要在實際中用到的,其中mysqlbat是用來呼叫mytestscript資料庫指令碼檔案(見七)來做一些資料庫處理,
同時還從mysql中匯出資料庫檔案到文字檔案的,
myhpergrouputil是在ibmolayserver 的前端展現工具hyper analyse中,將設計好的檢視匯出的,
mybat是乙個可以說是綜合的批處理檔案,根據輸入的引數呼叫前兩個批處理檔案,例如輸入:mybat -sql 則自動執行mysqlbat
輸入:mybat -grouputil,則自動執行myhpergrouputil
四、mysqlbat.bat
@echo off
rem 列印出你好
echo 你好
rem mysql -u root --password=123
rem 將gb資料庫自動匯出到d盤下的檔案中
cd d:\
mysql -u root --password=123 < "d:\myworkspace\bat\mytestscript"
mysqldump gb -u root --password=123 > gb.sql
echo 結束
cd d:\myworkspace\bat>mysqlbat
pause
六、mybat.bat
@echo off
::如果是sql則直接跳到end
if %1==-sql goto sql
if %1==-grouputil goto grouputil
:wrong param
echo 引數不存在
goto end
:sql
mysqlbat
goto end
:grouputil
myhpergrouputil
goto end
rem 結束
:end
echo 命令執行完畢
七、mytestscript資料庫指令碼檔案
use gb;
drop table testscript;
create table testscript(col1 int not null,col2 varchar(10));
insert into testscript(col1,col2) values(1,"c1");
insert into testscript(col1,col2) values(2,"c2");
select * from testscript into outfile 'd:/myworkspace/bat/testscript.txt';
隨著我學習的深入,會進一步的補充。
trackback:
批處理檔案編寫
自上而下成批的處理每一條命令,知道執行到最後一條 建立記事本檔案然後將檔案字尾改為.bat即可 pause 暫停執行 echo off 遮蔽執行過程,即關閉回顯 color 0a 設定背景和字型顏色 0為背景顏色,a為字型顏色 具體顏色可對照下圖 title 設定該批處理的標題 nul 2 nul ...
批處理檔案 bat 編寫
下面記錄一下.bat檔案編寫格式 echo off start echo 請輸入數字選擇下一步操作 echo 1 ip設定為會議室 echo 2 設定為dhcp自動獲取ip set p var if var 1 goto ip1 if var 2 goto ipdhcp ip1 clsnetsh i...
編寫批處理檔案 壓縮
批處理檔案 打包zip 指令的結構 用法 rar 命令 開關 1 開關 n 壓縮檔案 檔案.列表檔案.解壓路徑 例如 rar a df filename rar filename dmp 表示的是,將某個dmp檔案打包為rar.引數說明 a 新增檔案到壓縮檔案中 k 鎖定壓縮檔案 s 產生固體存檔,...