1. 程式人生 > >Bat批處理指令碼程式 延遲變數擴充套件和Call

Bat批處理指令碼程式 延遲變數擴充套件和Call

原創

直接上指令碼吧,不難,但是有點饒頭。Bat東西說多不多,說不多也蠻多的,學個入門就差不多了,不想再深入了,能看懂會修改一點就可以了,比如編譯COCOS遊戲什麼的,批量複製個檔案啥的,看了兩三天,倒也不覺得浪費時間。

Call練習.bat

@echo off
:: %0 是指令碼自身 
echo 你呼叫了  %0
echo 傳過來的第一個引數是:  %1 第二個引數是:  %2 

set /a BBB=888

pause

變數延遲.bat
@echo off

::1.Call
::呼叫  練習.bat  引數1:100   引數2:我是大帥哥
call D:\Call練習.bat 100 我是大帥哥 
::可以直接繼承變數BBB
echo %BBB%
::呼叫完成後,繼續執行
pause


::2.沒有開啟變數延遲擴充套件
set /a AAA=0
for /L %%a in (1,1,5) do (
    set /a AAA=%%a
    ::這裡的 AAA 永遠等於0,因為do()後面複合語句,所有的命令是相當於一條命令來執行,相當於所有命令並行
    echo %AAA%
)
::這裡AAA=5
echo %AAA%
pause


::3.開啟變數延遲擴充套件
setlocal EnableDelayedExpansion 

set /a AAA=0
for /L %%a in (1,1,5) do (
    set /a AAA=%%a
    ::開啟變數延遲擴充套件後,用!AAA!來取值,%AAA%還是等於0
    echo !AAA!
)
::這裡AAA=5
echo %AAA%
pause
//改變工作目錄為F盤
pushd F:\   

//回到當前目錄(%~dp0
popd

指令碼下載:

http://download.csdn.net/download/u012322710/10190451


相關推薦

Bat處理指令碼程式 延遲變數擴充套件Call

原創 直接上指令碼吧,不難,但是有點饒頭。Bat東西說多不多,說不多也蠻多的,學個入門就差不多了,不想再深入了,能看懂會修改一點就可以了,比如編譯COCOS遊戲什麼的,批量複製個檔案啥的,看了兩三天,

Oracle儲存過程呼叫bat處理指令碼程式

        由於系統業務的複雜性,會經常用到Oracle資料的儲存過程,那些比較複雜的邏輯就寫在了儲存過程中。今天有遇到一個需求,是需要在儲存過程中呼叫windows系統上的bat批處理檔案,之前

BAT 處理指令碼教程 BAT 處理指令碼教程 DOS的重定向命令及在安全方面的應用

BAT 批處理指令碼教程 第一章 批處理基礎第一節 常用批處理內部命令簡介批處理定義:顧名思義,批處理檔案是將一系列命令按一定的順序集合為一個可執行的文字檔案,其副檔名為BAT或者CMD。這些命令統稱批處理命令。小知識:可以在鍵盤上按下Ctrl+C組合鍵來強行終止一個批處理的執行過程。瞭解了大

bat處理指令碼入門

第一章 批處理基礎第一節 常用批處理內部命令簡介批處理定義:顧名思義,批處理檔案是將一系列命令按一定的順序集合為一個可執行的文字檔案,其副檔名為BAT或者CMD。這些命令統稱批處理命令。小知識:可以在鍵盤上按下Ctrl+C組合鍵來強行終止一個批處理的執行過程。瞭解了大概意思後,我們正式開始學習.先看一個

【最全的】BAT 處理指令碼教程

第一章 批處理基礎第一節 常用批處理內部命令簡介批處理定義:顧名思義,批處理檔案是將一系列命令按一定的順序集合為一個可執行的文字檔案,其副檔名為BAT或者CMD。這些命令統稱批處理命令。小知識:可以在鍵盤上按下Ctrl+C組合鍵來強行終止一個批處理的執行過程。瞭解了大概意思後

bat處理指令碼命令安裝解除安裝windows服務-InstallUtil.exesc命令

1、使用Visiual Studio安裝正常流程開發Window服務,增加服務安裝類,配置服務安裝屬性,服務名稱設定為TestSvr(可自行修改為其他名稱),編譯,如下: 2、安裝.net 框架後,根據服務使用的框架版本,將C:\WINDOWS\Microsoft.NET\Framew

使用bat處理進行程式備份

@echo off rem 獲取當前資料夾的名字 set "lj=%~p0" set "lj=%lj:\= %" for %%a in (%lj%) do set wjj=%%a rem 建立一個版本的說明文件 cd.>README.txt rem 生

bat處理指令碼呼叫oracle儲存過程,系統定時呼叫指令碼

編寫一個bat批處理指令碼呼叫oracle儲存過程,並設定系統定時完成該指令碼任務,有以下幾個步驟: 1. 先編寫一個call.sql檔案: set timing on; DECLARE o_UserID varchar2(20); BEGIN Packag

Windows BAT處理指令碼教程

第一章 批處理基礎 第一節 常用批處理內部命令簡介 批處理定義:顧名思義,批處理檔案是將一系列命令按一定的順序集合為一個可執行的文字檔案,其副檔名為BAT或者CMD。這些命令統稱批處理命令。 小知識:可以在鍵盤上按下Ctrl+C組合鍵來強行終止一個批處理的執行過

bat 處理指令碼 修改指定路徑czz檔案內容

 @echo off&setlocal enabledelayedexpansion set DestPath=.\ set TempPath=en.swh set madan=0 rem .doc set DestExt=*.ccz for /f "delim

BAT 處理指令碼教程

第一章 批處理基礎第一節 常用批處理內部命令簡介 批處理定義:顧名思義,批處理檔案是將一系列命令按一定的順序集合為一個可執行的文字檔案,其副檔名為BAT或者CMD。這些命令統稱批處理命令。 小知識:可以在鍵盤上按下Ctrl+C組合鍵來強行終止一個批處理的執行過程。 瞭解了

處理延遲變數擴充套件

這個雙!就是延遲擴充套件,等執行時才擴充套件變數。 命令列窗口裡是延遲擴充套件是預設開啟的。 也可以setlocal EnableDelayedExpansion 開啟,setlocal DisableDelayedExpansion 關閉。 關閉後,輸出:1,!num! 2,!num! 3,!num! 4

windows處理指令碼bat命令解析【11】rd與del命令以及引數

命令:RD,刪除目錄  增加引數:/S  引數說明:使用此引數即“RD/S”用於刪除目錄樹,即刪除目錄及目錄下的所有子目錄和檔案,相當於以前版本中的DELTREE命令。  增加引數:/Q XP中的增強DOS命令  引數說明:使用上面的/S引數刪除目錄樹時,系統

windows處理指令碼bat命令解析【10】如何執行cmd命令

說來慚愧,感覺這個本來就不是問題。 先公佈答案: 你在cmd黑視窗下輸入什麼,就把這行命令寫入到bat指令碼中,九江。 前面和後面什麼也不用加。 比如,要在cmd下通過node執行某個hello.js檔案,命令為 node hello.js 那麼在bat指令碼中,只需要作如下

windows處理指令碼bat命令解析【9】SETLOCAL/ENDLOCAL

原文地址:https://blog.csdn.net/qq_33336155/article/details/53516976 Setlocal 與 Endlocal 命令 開始與終止批處理檔案中環境改動的本地化操作。在執行 Setlocal 之後所做的環境改動只限於批處理檔案。要還原原先的設定

windows處理指令碼bat命令解析【7】EXIT /B 0

exit命令: exit /B 返回值 例: aa.bat --------------------------------------------------------------------------------- @echo aa.bat 呼叫中 @exit /b 2

bat處理開啟檔案路徑或者程式

PEM開啟程式 @echo off start /min "" "D:\Program Files\Xshell\Xshell.exe" PEM設定延時時間 timeout /t 10 start /min "" "D:\Program Files\SecureCRT\SecureCRT

bat處理設定Java JDK系統環境變數檔案

自己修改第3行的Java安裝目錄就可以設定JAVA_HOME, classPath,追加到PATH的最前面 JAVA_HOME=C:\Program Files\Java\jdk1.6.0_10 classPath=%JAVA_HOME%\lib\tools.jar;%J

bat處理(二):%0 %1——給處理指令碼傳遞引數

初次接觸批處理指令碼覺得有點意思,所以決定寫一個小功能試驗一下,誰知剛一開始就發現遇到了麻煩,本想著使用引數來控制程式的執行結果,可是引數怎麼傳進去呢,於是研究了一番,最終發現這個引數的傳遞與main函式居然非常相似,我們一起來寫個小例子試驗一下。 內容 批處理檔案中可引用的引數為%0~%9,%0是指批處理

BAT處理檔案,指令碼時間值%time:~0,2%%time:~3,2%%time:~6,2%的用法。

如下的各個操作的意義如下:%time:~0,2%  表示從左向右指標向右偏0位,然後從指標偏移到的位置開始提取2位字元,結果是小時欄位數值%time:~3,2%  表示指標從左向右偏移3位,然後從偏移處開始提取2位字元,結果是分鐘欄位數值%time:~6,2%  表示指標從左向右