bat 變量淺析

1. 變量,雙引號(hào)不同情況處理
set a="hello world"
echo %a%
REM "hello world"
set b=xx\"hello world"
echo %b%
REM xx\"hello world"
set "c=xx\hello world"
echo %c%
REM xx\hello world
2. 變量賦值變化

默認(rèn)情況,if后面的復(fù)合語句當(dāng)作一條命令一次性執(zhí)行
若設(shè)置了延遲變量,復(fù)合語句里會(huì)一條一條執(zhí)行,用!var!才能引用變化后的賦值

REM 開啟延遲變量
setlocal enabledelayedexpansion 
set a=test
REM 留意if的空格
if "%a%" == "test" (
    echo %a%
    set a=hello
    if "!a!"=="hello" echo %a%
    echo %a%
)
REM setlocal disabledelayedexpansion
REM 關(guān)閉延遲變量,留意變量含有!情況

3. 變量截取字符串

%var:~index,len%
截取變量部分,index 從0開始
len<0時(shí),排除字符串最后len個(gè)
%var:~len%
直接提取最后len個(gè)

4. 變量拓展,輸入,表達(dá)式

set P 
REM 顯示P開頭的變量
set /p var="輸入:"
REM 用戶輸入信息
set /a var=1+2 
REM 表達(dá)式
拓展變量:
  • %ERRORLEVEL% 上一條命令執(zhí)行后的返回結(jié)果,成功0,錯(cuò)誤有各種自己的標(biāo)識(shí)
  • %%~ni 循環(huán)中,可獲取不帶后綴的變量名
  • 可以巧妙使用類似數(shù)組,set a[1]="hello",實(shí)際是一個(gè)變量
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • .bat腳本基本命令語法 目錄 批處理的常見命令(未列舉的命令還比較多,請(qǐng)查閱幫助信息) 1、REM 和 :: 2...
    慶慶慶慶慶閱讀 8,540評(píng)論 1 19
  • %~dp0[獲取當(dāng)前路徑]#[https://www.cnblogs.com/zhaoqingqing/p/462...
    紅塵釀酒貪杯閱讀 931評(píng)論 0 0
  • 之前項(xiàng)目用到了MySQL、Redis、MongoDB和其他一些獨(dú)立的jar包程序,測(cè)試的時(shí)候需要用腳本配置java...
    程序猿小董閱讀 976評(píng)論 0 0
  • 1. Python 變量類型 變量存儲(chǔ)在內(nèi)存中的值。這就意味著在創(chuàng)建變量時(shí)會(huì)在內(nèi)存中開辟一個(gè)空間。基于變量的數(shù)據(jù)類...
    張松貴閱讀 452評(píng)論 0 0
  • 命令簡介 echo 命令 打開回顯或關(guān)閉請(qǐng)求回顯功能,或顯示消息。如果沒有任何參數(shù),echo命令將顯示當(dāng)前回顯設(shè)置...
    Elevenstrings閱讀 1,121評(píng)論 0 2

友情鏈接更多精彩內(nèi)容