1樓:麥兜
^@echo off
set a=abaacadaaeaf
set a=%a:aa=%
echo %a:~
抄,3% %a:~2,3% %a:~-3%pause
樓上別學我的^.^
不能 你試試去掉tokens 就知道了!
for /f "delims=" %%i in ("%cd%") do set folder=%%~ni 請問這段**的意思,批處理。
2樓:公子七哥
%cd%——當前路徑
for /f "delims=" %%i in ("%cd%") do——逐行取雙引號中的內容。
因為就一行,所以這裡就是將
專%cd%賦值給%%i
%%~ni將%%i擴充到一屬個檔名
意思就是取%%i路徑中最後一個\後的檔名。
%cd%最後的一個檔名就是當前資料夾的名字。
所以這行的意思就是取當前路徑的資料夾名並賦給folder不用這麼多,下面這樣也可以的:
for %%i in ("%cd%") do set folder=%%~ni
批處理for /f "delims=" %%b in ('dir /s/b/a-d "%%a\*.*"') do...... ,這裡面的單引號什麼作用?
3樓:匿名使用者
上面批處理的bai意思:du
首先將(dgoa bmmail mail)裡面的dgoa賦予給%%a,這是
zhi%%a的值dao就是dgoa,然後執行下面的for /f 語句內。
'dir /s/b/a-d "%%a\*.*"':這容句的意思:
列出dgoa資料夾下所有的檔案,包括子資料夾下的檔案,用單引號是因為在for /f語句中()括號裡面如果是命令,必須用單引號把命令括起來:'dir /s/b/a-d "%%a\*.*"是命令,所以用單引號括起來。
上面的批處理合起來的意思就是:先把dgoa賦予給%%a,然後執行for /f語句:列出dgoa資料夾下的檔案,每個都賦予給%%b,執行do後面的命令;執行完後,在將bmmail賦予%%a,在執行和上面一樣的步驟,最後在將mail賦予%%a,重複上面的步驟
有疑問,請採納!
如果對你有幫助,請採納!謝謝!
for /f "delims=" %%f in ('dir /b /a-d /o-s') do (set z=%%~zf)什麼意思
4樓:rejoice臨江仙
這是段dos批處理程式
dir /b /a-d /o-s顯示目錄下檔案,各個引數的含義可以用dir/?檢視
set z=%%~zf是賦值給z變數
一個百分號表示引數,比如%1
兩個百分號括起來表示變數,比如%dirname%,%z%兩個百分號連在一起表示一個百分號,比如%%f其實是%f
我寫了BAT指令碼獲取指定網絡卡的IP地址,但是一直不成功,求大佬幫我看看
if rv is not none and rsv is not none extract version subversionself.nmap version number int line rv.start rv.end self.nmap subversion number int line...
寫個bat命令
echo off for f delims i in dir a d b dp0 asc do for f usebackq tokens delims j in i do if j pads pcb echo pads powerpcb v2005.2 basic design database ...
shell本地指令碼呼叫遠端指令碼當遠端指令碼執行完再繼
bin bash 呼叫expect指令碼執行遠端sh expect c set timeout 10000 spawn ssh usr ip expect assword expect send sh 1 r expect echo ls l 其中timeout時間需要設定足夠長,不然會連線超時斷掉...