批處理中的變量


set 功能一覽
[設置變量]
格式:set 變量名=變量值
詳細:被設定的變量以%變量名%引用

[取消變量]
格式:set 變量名=
詳細:取消后的變量若被引用%變量名%將為空

[展示變量]
格式:set 變量名
詳細:展示以變量名開頭的所有變量的值

[列出所有可用的變量]
格式:set


[計算器]
格式:set /a 表達式
示例:set /a 1+2*3 輸出 7

!注意!
set不能用在復合語句里面比如if 1==1 set a=2或者for %%i in (a) do set a=2


預定義的變量

下面是些已經被底層定義好可以直接使用的變量:不會出現在 SET 顯示的變量列表中
%CD% - 擴展到當前目錄字符串。
%DATE% - 用跟 DATE 命令同樣的格式擴展到當前日期。
%TIME% - 用跟 TIME 命令同樣的格式擴展到當前時間。
%RANDOM% - 擴展到 0 和 32767 之間的任意十進制數字。
%ERRORLEVEL% - 擴展到當前 ERRORLEVEL 數值。
%CMDEXTVERSION% - 擴展到當前命令處理器擴展名版本號。
%CMDCMDLINE% - 擴展到調用命令處理器的原始命令行。
%0 bat的完整路徑名如"C:\Windows\system32\xxx.bat"
%1 bat參數1依次類推%2參數2...
%path% - 當前的環境變量。以分號隔開的路徑列表,路徑可包含空格,可以以'\'結尾, 可以以雙引號包圍之。

%USERNAME% - 當前用戶名

%USERPROFILE% - 當前用戶主目錄

獲取當前腳本所在路徑:echo %~dp0(需要寫在腳本中,運行腳本時顯示)


擴展變量

@ 與%i相關的變量(bat參數或者for循環的%i)
假設文件為C:\Documents and Settings\jinsun\桌面\ParseSinglePkgs.bat
%0        C:\Documents and Settings\jinsun\桌面\ParseSinglePkgs.bat
%~dp0 C:\Documents and Settings\jinsun\桌面\
%cd%   C:\Documents and Settings\jinsun\桌面
%~nx0   ParseSinglePkgs.bat
%~n0     ParseSinglePkgs
%~x0     .bat

@ 與%VAR%相關的變量
%VAR:str1=str2%   會將VAR中的str1替換為str2(str2如果為空則可以達到刪除的效果,str1前可以加*,變量%ABC:*B=%是C)
%VAR:~0,-2%          會提取VAR 變量的所有字符,除了最后兩個
%VAR:~-2%             會提取VAR 變量的最后兩個
%

PowerShell環境變量:http://www.cnblogs.com/dreamer-fish/p/3892277.html


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM