1樓:典雁佛
for命令是乙個比較複雜的命令,主要用於引數在指定的範圍內迴圈執行命令。
在批處理檔案中使用for命令時,指定變數請使用%%variablefor變數參照的替換已被增強。您現在可以使用下列選項語法:~i -刪除任何引號("),擴充%i
%~fi -將%i擴充到乙個完全合格的路徑名%~di -僅將%i擴充到乙個驅動器號
%~pi -僅將%i擴充到乙個路徑
%~ni -僅將%i擴充到乙個檔名
%~xi -僅將%i擴充到乙個檔案延伸名
%~si -擴充的路徑只含有短名
%~ai -將%i擴充到檔案的檔案內容
%~ti -將%i擴充到檔案的日期/時間
%~zi -將%i擴充到檔案的大小
%~$path:i -查詢列在路徑環境變數的目錄,並將%i擴充到找到的第乙個完全合格的名稱。如果環境變數未被定義,或者沒有找到檔案,此組合鍵會擴充空字串可以組合修飾符來得到多重結果:
%~dpi -僅將%i擴充到乙個驅動器號和路徑%~nxi -僅將%i擴充到乙個檔名和延伸名%~fsi -僅將%i擴充到乙個帶有短名的完整路徑名%~dp$path:i -查詢列在路徑環境變數的目錄,並將%i擴充到找到的第乙個驅動器號和路徑。
%~ftzai -將%i擴充到類似輸出線路的dir在以上例子中,%i和path可用其他有效數值代替。 %~語法用乙個有效的for變數名停止。選取類似%i的大寫變數名比較易讀,而且避免與不分大小寫的組合鍵混淆。
2樓:匿名使用者
%%~xi 是擴充%%i 到檔案的副檔名。
比如下面的例子,只用顯示.cdm
@echo off
for /f %%i in ("123.cmd") do (echo %%~xi)
pause
批處理中,當for語句中使用了%%~ni後,如何將其賦值給變數var
bat中%和%%有什麼區別,怎麼用?
3樓:字匠
bat中%和%%有什麼區別,怎麼用,解決辦法:
如果乙個名稱用%括起來,那麼就是用的它的賦值,而不是本身的字母。
%%i 這種變數是for 語句裡面 特有的變數(還有一種是外部變數,接受外部引數的格式是%1 -%9 共9個變數),只有在批處理裡面才寫 兩個 %% 號表示變數,cmd中只用 乙個 % 號。
反正只要你在批處理檔案裡面用 for,變數就用 %%。
比如echo time,echo %time%以上兩個前者顯示time這個字母,後者顯示系統時間 19:42:12:02
還有%diskdiver%=系統盤等。
可以用set自己設定,有一些是系統預設的比容上面說的time;diskdiver。
在bat批處理指令碼中,怎樣將for語句中的%%i當作字串處理?做類似於%str:~1,5%之類的操作?
4樓:神靈武士
setlocal enabledelayedexpansion@echo off
for /l %%i in (1000,1,1005) do (@set num=%%i
@echo !num:~-1,1!
)pause
大致的思路是把%%i賦值給另乙個變數,再對另乙個變數進行操作,本例是取了數字的最後一位,並且使用到了延遲變數
在批處理中%是什麼意思 作用
5樓:匿名使用者
如果是 %a% 這種形式 ,就是變數的引用,
@echo off
set a=123 rem定義乙個變數a 賦值為123
echo %a% rem顯示出變數a的值(如果不加% %系統會把a當字元處理了,不會當成變數的)
%%i 這種變數是for 語句裡面 特有的變數(還有一種是外部變數,接受外部引數的格式是%1 -%9 共9個變數),只有在批處理裡面才寫 兩個 %% 號表示變數,cmd中只用 乙個 % 號。反正只要你在批處理檔案裡面用 for,變數就用 %%。例如
批處理中的寫法
for %%i in (1 2 3 4 5 ) do echo %%i
為什麼批處理中用兩個 %%,其實是編譯器編譯的時候要遮蔽乙個%
在cmd視窗中寫法
for %i in (1 2 3 4 5 ) do echo %i
現在說下外部變數,是系統制定的,只有9個,專門儲存外部引數的,就是執行批處理時加的引數。只有 %1 %2 %3 %4 ...... %9
例如 @echo off
echo %1
echo %2
echo %3
echo %4
將上面的**複製到記事本。儲存格式為 bat
現在怎樣傳遞引數給這個批處理,如下
在開始》執行 裡面輸入 cmd 確定
在彈出來的視窗中 輸入 上面 批處理檔案 的 完全路徑名,然後就加要傳遞的引數了 例如 c:\text.bat aaaa bbbb cccc dddd eeeee
上面 aaaa bbbb cccc dddd eeeee
就是傳遞給 批處理 「引數」這些引數 會儲存在 %1至 %9 這9個變數名,最多只能儲存 9 個。執行下就知道了,上面批處理檔案中 %1變數儲存的是aaaa
%2 儲存的是 bbbb
%3 儲存的是 cccc
%4 儲存的是 dddd
%5 是 eeee 上面沒有用到 %5變數
6樓:
% 變數的標識
% % 兩個百分號中間的內容就是乙個變數名。。。如你舉的例子那樣
還有一種用法。。用於 for 命令的。。。。
7樓:匿名使用者
% 是引用的意思:
例1:@echo off
echo %time%
pause
此例就是引用,引用了系統時間。
例2:@echo off
set /p qq=輸入你的qq號:
echo 你剛剛輸入的qq號碼是:%qq%pause
此例引用鍵盤上輸入的變數"qq"的值.
如果你的批處理中用了變數延遲,
那麼就不能用"%"來引用了,
就要用"!",
例如:@echo off
setlocal enabledelayedexpansionecho !time!
pause
for 命令中用乙個"%"是在cmd下才這樣用,在批處理中就要用兩個"%"。
就不細說了,有機會咱們在qq上互相學習!
sql語句中的符號是什麼意思,sql 語句中 符號是什麼意思?
以下希望對你有所幫助。儘管宣告字串常量的標準方法通常都很方便,但是如果字串包含很多單引號或者反斜槓,那麼理解字串的內容可能就會變得很苦澀,因為每個單引號都要加倍。為了讓這種場合下的查詢更具可讀性,postgresql 允許另外一種稱作 美元符包圍 的字串常量宣告辦法。一個通過美元符包圍宣告的字串常量...
sas語句中的或者是是什麼意思,sas中各種符號的意思,例如 , , 什麼的
都是行控制符。可以簡單理解為,代表跳轉到當前輸入值的下一行 不論當前行是否還有內容未輸入 代表繼續輸入當前行的內容,直到結束為止。 兩個都是行控制符 表示執行下一個操作時,指標移到下一個記錄。表示執行下一個操作,指標保持在當前記錄。給個例子 data a input x y cards 1 2 3 ...
i是啥意思,i 和 i是什麼意思?
蒲公英花開丶 i我雙語例句 1why should i believe you?我為什麼要相信你?2can i help you?我可以幫你嗎? 傻吖 看放在 如果單純說就是 我 的意思。 曩年 in.第一人稱單數代詞,用作動詞的主語 我 英文本母i 例句 1.i don t believe a w...