1. 程式人生 > >BAT指令碼編寫教程入門提高篇

BAT指令碼編寫教程入門提高篇

test.bat
  1. @ECHO OFF  
  2. TITLE BAT引數  
  3. COLOR A  
  4. echo -----------if goto choice for 命令-----------  
  5. echo=   
  6. if "%1"=="1" goto x1  
  7. :x1  
  8. echo 引數1正確...  
  9. echo=  
  10. echo -----------------------------------  
  11. exit /b 0
在另一個bat檔案中呼叫
  1. @ECHO OFF  
  2. TITLE BAT引數  
  3. COLOR A  
  4. echo -----------BAT引數-----------  
  5. echo=   
  6. CALL test.bat 1  
  7. if %errorlevel%==0 goto x2  
  8. :x2  
  9. echo 程式跳到x2...  
  10. echo=  
  11. echo -----------------------------------  
  12. PAUSE  

choice 使用此命令可以讓使用者輸入一個字元(用於選擇),從而根據使用者的選擇返回不同的errorlevel,然後於if errorlevel配合,根據使用者的選擇執行不同的命令。

注意:choice命令為DOS或者Windows系統提供的外部命令,不同版本的choice命令語法會稍有不同,請用choice /?檢視用法。

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

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

   注意:
   ERRORLEVEL 環境變數被設定為從選擇集選擇的鍵索引。列出的第一個選
   擇返回 1,第二個選擇返回 2,等等。如果使用者按的鍵不是有效的選擇,
   該工具會發出警告響聲。如果該工具檢測到錯誤狀態,它會返回 255 的
   ERRORLEVEL 值。如果使用者按 Ctrl+Break 或 Ctrl+C 鍵,該工具會返回 0
   的 ERRORLEVEL 值。在一個批程式中使用 ERRORLEVEL 引數時,將引數降
   序排列。

示例:
   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]?

例子:

相關推薦

BAT指令碼編寫教程入門提高

test.bat@ECHO OFF  TITLE BAT引數  COLOR A  echo -----------if goto choice for 命令-----------  echo=   if "%1"=="1" goto x1  :x1  echo 引數1正確...  echo=  echo --

BAT指令碼編寫教程簡單入門

批處理檔案最常用的幾個命令: echo表示顯示此命令後的字元  echo on  表示在此語句後所有執行的命令都顯示命令列本身 echo off 表示在此語句後所有執行的命令都不顯示命令列本身@與ec

BAT指令碼編寫簡單入門-常用命令

命令視窗常用命令 1、cd 命令 cd //顯示當前目錄 cd .. //退出到上一個目錄 cd /d D: //進入上次D盤所在目錄 cd /d d:\ //進入D盤根

BAT指令碼編寫教程(比較易懂和全面)

echo、@、call、pause、rem(小技巧:用::代替rem)是批處理檔案最常用的幾個命令,我們就從他們開始學起。 echo 表示顯示此命令後的字元 echo off 表示在此語句後所有執行的命令都不顯示命令列本身 @與echo off相象,但它是加在每個命令列的最前

【Java入門提高】Day5 Java中的回調(二)

彈出對話框 java入門 也會 color 編程 args performed show clas   Java中有很多個Timer,常用的有兩個Timer類,一個java.util包下的Timer,一個是javax.swing包下的Timer,兩個Timer類都有用到回調

【Java入門提高】Day11 Java代理——JDK動態代理

創建 pri 建立 ret and etc bool 提高 跳舞   今天來看看Java的另一種代理方式——JDK動態代理   我們之前所介紹的代理方式叫靜態代理,也就是靜態的生成代理對象,而動態代理則是在運行時創建代理對象。動態代理有更強大的攔截請求功能,因為可以獲得類的

【Java入門提高】Day12 Java代理——Cglib動態代理

效率 object urn 而且 什麽 tor clas ams 提高   今天來介紹另一種更為強大的代理——Cglib動態代理。   什麽是Cglib動態代理?   我們先回顧一下上一篇的jdk動態代理,jdk動態代理是通過接口來在運行時動態創建委托類的代理對象,但是跟靜

【Java入門提高】Day13 Java中的反射機制

== getchar 復制對象 enc 類型判斷 amt sim 博客 contains   前一段時間一直忙,所以沒什麽時間寫博客,拖了這麽久,也該更新更新了。最近看到各種知識付費的推出,感覺是好事,也是壞事,好事是對知識沈澱的認可與推動,壞事是感覺很多人忙於把自己的知識

【Java入門提高】Day15 Java泛型再探——泛型通配符及上下邊界

編譯器 pan 會有 認識 方法重載 上界 圖片 解決 int   上篇文章中介紹了泛型是什麽,為什麽要使用泛型以及如何使用泛型,相信大家對泛型有了一個基本的了解,本篇將繼續講解泛型的使用,讓你對泛型有一個更好的掌握和更深入的認識。   上篇中介紹完泛型之後,是不是覺得泛型

【Java入門提高】Day16 Java異常處理(下)

http final 自定義異常 2個 輸入 也有 推薦 錯誤 num   今天繼續講解java中的異常處理機制,主要介紹Exception家族的主要成員,自定義異常,以及異常處理的正確姿勢。 Exception家族   一圖勝千言,先來看一張圖。   Excepti

【Java入門提高】Day34 Java容器類詳解(十五)WeakHashMap詳解

public class WeakHashMapTest { public static void main(String[] args){ testWeakHashMap(); } private static void testWeakHashMap

【課程分享】ABAQUS複合材料層合板方法系統講解——入門+提高

本視訊課程詳細講解了傳統殼與連續殼的異同,指明殼單元的法向方向,殼單元堆積的方向、介面點、積分點、以及殼在ABAQUS中應該注意的事項; 詳細的講解了多種複合材料建模方法; 詳細的講解了多種座標系的使用方法和應用場合; 詳細的講解了3種設定堆疊方向的方法; 詳細的講解了複合材料

【Java入門提高】Day2 介面

  上一篇講完了抽象類,這一篇主要講解比抽象類更加抽象的內容——介面。   什麼是介面呢?先來看一個現實中的栗子,我們常用的插座,一般分為兩孔和三孔,所以基本上不管是什麼電器,只要插頭插進去就可以正常使用,想想看,如果沒有這樣的規範,有十幾種不同的插座孔,每個電器的插頭都不一樣,還不得崩潰掉。   先來看

windows bat指令碼編寫

Windows .bat 指令碼簡單用法介紹: 一.簡單批處理內部命令簡介 1.Echo 命令 打開回顯或關閉請求回顯功能,或顯示訊息。如果沒有任何引數,echo 命令將顯示當前回顯設定。 語法: echo [{on│off}] [message] Sa

RTXSDK教程提高

set RTXObj = createobject("rtxserver.rtxobj") set RTXParams = createobject("rtxserver.collection") RTXObj.Name = "SYSTOOLS" RTXParams.Add "USERNAME", txtR

windows中bat指令碼編寫

#前言 大家都知道python的便利,但是如果這臺計算機沒有裝python環境怎麼辦,這時為了做一些重複性的工作,就不得不用cmd來編寫一些簡單的指令碼。 希望對大家有點幫助,文末有一些實用的指令碼 ###基本命令 可以使用windows+R調出執行框,輸入cm

BAT指令碼編寫要點(1)_特殊字元

1. 點        與echo連用,作用是換行        示例1 [輸出空行]        echo.          2 > 定向符[輸出]       將命令的輸出進行重定向 [一般用於將結果寫入檔案]       注意 nul 為空裝置 >n

Android Studio2.2.3 使用教程-入門

android最近學習下Android APK的內容,保持學習的一些文章:Android Studio 2.2.3工具使用:http://blog.csdn.net/qq_16313365/article/details/52537397待續本文出自 “專註嵌入式多媒體技術” 博客,請務必保留此出處http:

Systemd入門教程:命令(轉)

apache 完整 start -o 一是 analyze sudo one iso 作者: 阮一峰 日期: 2016年3月 7日 Systemd 是 Linux 系統工具,用來啟動守護進程,已成為大多數發行版的標準配置。 本文介紹它的基本用法,分

Systemd入門教程:實戰(轉)

現在 重啟 penssh span 日誌 才會 查看 筆記本 dep 作者: 阮一峰 日期: 2016年3月 8日 上一篇文章,我介紹了 Systemd 的主要命令,今天介紹如何使用它完成一些基本的任務。 一、開機啟動 對於那些支持 Systemd 的軟