• <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>

            woaidongmao

            文章均收錄自他人博客,但不喜標(biāo)題前加-[轉(zhuǎn)貼],因其丑陋,見(jiàn)諒!~
            隨筆 - 1469, 文章 - 0, 評(píng)論 - 661, 引用 - 0
            數(shù)據(jù)加載中……

            BAT:第三節(jié)(FOR命令中的變量)

            FOR命令中有一些變量,他們的用法許多新手朋友還不太了解,今天給大家講解他們的用法!
            先把FOR的變量全部列出來(lái):
                 ~I          - 刪除任何引號(hào)("),擴(kuò)展 %I
                 %~fI        - 將 %I 擴(kuò)展到一個(gè)完全合格的路徑名
                 %~dI        - 僅將 %I 擴(kuò)展到一個(gè)驅(qū)動(dòng)器號(hào)
                 %~pI        - 僅將 %I 擴(kuò)展到一個(gè)路徑
                 %~nI        - 僅將 %I 擴(kuò)展到一個(gè)文件名
                 %~xI        - 僅將 %I 擴(kuò)展到一個(gè)文件擴(kuò)展名
                 %~sI        - 擴(kuò)展的路徑只含有短名
                 %~aI        - 將 %I 擴(kuò)展到文件的文件屬性
                 %~tI        - 將 %I 擴(kuò)展到文件的日期/時(shí)間
                 %~zI        - 將 %I 擴(kuò)展到文件的大小
                 %~$PATH:I   - 查找列在路徑環(huán)境變量的目錄,并將 %I 擴(kuò)展
                               到找到的第一個(gè)完全合格的名稱。如果環(huán)境變量名
                               未被定義,或者沒(méi)有找到文件,此組合鍵會(huì)擴(kuò)展到
                               空字符串
            我們可以看到每行都有一個(gè)大寫字母"I",這個(gè)I其實(shí)就是我們?cè)贔OR帶入的變量,我們FOR語(yǔ)句代入的變量名是什么,這里就寫什么.
            比如:FOR /F  %%z IN ('set') DO @echo %%z
            這里我們代入的變量名是z那么我們就要把那個(gè)I改成z,例如%~fI改為%~fz
            至于前面的%~p這樣的內(nèi)容就是語(yǔ)法了!
            好開(kāi)始講解:
            ~I          - 刪除任何引號(hào)("),擴(kuò)展 %I
            這個(gè)變量的作用就如他的說(shuō)明,刪除引號(hào)!
            我們來(lái)看這個(gè)例子:
            首先我們?cè)谧烂娼⒁粋€(gè)名字為temp.txt文本文件,在里面輸入這些內(nèi)容
            "1111
            2222"
            "3333"
            44"44
            然后在建立個(gè)BAT文件代碼如下:
            FOR /F "delims=" %%i IN (temp.txt) DO @echo  %%~i
            pause
            執(zhí)行后,我們看CMD的回顯如下:
            1111
            2222"
            3333
            44"44
            和之前temp.txt中的內(nèi)容對(duì)比一下,我們會(huì)發(fā)現(xiàn)第一行和第三行的引號(hào)都消失了,這就是刪除引號(hào)~i的作用了!
            刪除引號(hào)規(guī)則如下(BAT兄補(bǔ)充!)
            1、若字符串首尾同時(shí)存在引號(hào),則刪除首尾的引號(hào);
            2、若字符串尾不存在引號(hào),則刪除字符串首的引號(hào);
            3、如果字符串中間存在引號(hào),或者只在尾部存在引號(hào),則不刪除。
            %~fI        - 將 %I 擴(kuò)展到一個(gè)完全合格的路徑名
            看例子:
            把代碼保存放在隨便哪個(gè)地方,我這里就放桌面吧.
            FOR /F "delims==" %%i IN ('dir /b') DO @echo  %%~fi
            pause
            執(zhí)行后顯示內(nèi)容如下
            C:\Documents and Settings\Administrator\桌面\test.bat
            C:\Documents and Settings\Administrator\桌面\test.vbs
            當(dāng)我把代碼中的 %%~fi直接改成%%i
            FOR /F "delims==" %%i IN ('dir /b') DO @echo  %%i
            pause
            執(zhí)行后就會(huì)顯示這些內(nèi)容
            test.bat
            test.vbs
            通過(guò)對(duì)比,我們很容易就看出沒(méi)有路徑了,這就是"將 %I 擴(kuò)展到一個(gè)完全合格的路徑名"的作用
            也就是如果%i變量的內(nèi)容是一個(gè)文件名的話,他就會(huì)把這個(gè)文件所在的絕對(duì)路徑打印出來(lái),而不只單
            單打印一個(gè)文件名,自己動(dòng)手動(dòng)實(shí)驗(yàn)下就知道了!
            %~dI        - 僅將 %I 擴(kuò)展到一個(gè)驅(qū)動(dòng)器號(hào)
            看例子:
            代碼如下,我還是放到桌面執(zhí)行!
            FOR /F "delims==" %%i IN ('dir /b') DO @echo  %%~di
            pause
            執(zhí)行后我CMD里顯示如下
            C:
            C:
            我桌面就兩個(gè)文件test.bat,test.vbs,%%~di作用是,如果變量%%i的內(nèi)容是一個(gè)文件或者目錄名,他就會(huì)把他這文件
            或者目錄所在的盤符號(hào)打印出來(lái)!
            %~pI        - 僅將 %I 擴(kuò)展到一個(gè)路徑
            這個(gè)用法和上面一樣,他只打印路徑不打印文件名字
            FOR /F "delims==" %%i IN ('dir /b') DO @echo  %%~pi
            pause
            我就不打結(jié)果了,大家自己復(fù)制代碼看結(jié)果吧,下面幾個(gè)都是這么個(gè)用法,代碼給出來(lái),大家自己看結(jié)果吧!
            %~nI        - 僅將 %I 擴(kuò)展到一個(gè)文件名
            只打印文件名字
            FOR /F "delims==" %%i IN ('dir /b') DO @echo  %%~ni
            pause
            %~xI        - 僅將 %I 擴(kuò)展到一個(gè)文件擴(kuò)展名
            只打印文件的擴(kuò)展名
            FOR /F "delims==" %%i IN ('dir /b') DO @echo  %%~xi
            pause
            %~sI        - 擴(kuò)展的路徑只含有短名
            打印絕對(duì)短文件名
            FOR /F "delims==" %%i IN ('dir /b') DO @echo  %%~si
            pause
            %~aI        - 將 %I 擴(kuò)展到文件的文件屬性
            打印文件的屬性
            FOR /F "delims==" %%i IN ('dir /b') DO @echo  %%~ai
            pause
            %~tI        - 將 %I 擴(kuò)展到文件的日期/時(shí)間
            打印文件建立的日期
            FOR /F "delims==" %%i IN ('dir /b') DO @echo  %%~ti
            pause
            %~zI        - 將 %I 擴(kuò)展到文件的大小
            打印文件的大小
            FOR /F "delims==" %%i IN ('dir /b') DO @echo  %%~zi
            pause
            %~$PATH:I   - 查找列在路徑環(huán)境變量的目錄,并將 %I 擴(kuò)展
                               到找到的第一個(gè)完全合格的名稱。如果環(huán)境變量名
                               未被定義,或者沒(méi)有找到文件,此組合鍵會(huì)擴(kuò)展到
                               空字符串
            這是最后一個(gè),和上面那些都不一樣,我單獨(dú)說(shuō)說(shuō)!
            然后在把這些代碼保存為批處理,放在桌面.
            FOR /F "delims==" %%i IN ('net.exe') DO @echo  %%~$PATH:i
            pause
            他的意思就在PATH變量里指定的路徑里搜索net,exe文件,如果有net.exe則會(huì)把他所在絕對(duì)路徑打印出來(lái),沒(méi)有就打印一個(gè)錯(cuò)誤!
            好了,FOR的的變量就介紹到這了!
                                              BY  傷腦筋

            posted on 2008-04-23 11:18 肥仔 閱讀(872) 評(píng)論(0)  編輯 收藏 引用 所屬分類: Windows開(kāi)發(fā)

            伊人丁香狠狠色综合久久| 久久久噜噜噜久久| 久久精品亚洲一区二区三区浴池 | 热re99久久6国产精品免费| 久久99精品久久只有精品| 国产成人精品久久综合| 中文精品久久久久人妻| 国产韩国精品一区二区三区久久| 91亚洲国产成人久久精品| 国产精品久久久久蜜芽| 久久精品男人影院| 无码人妻久久一区二区三区蜜桃| 精品综合久久久久久97超人 | 亚洲国产一成人久久精品| 麻豆精品久久精品色综合| 青青草国产97免久久费观看| 久久精品亚洲精品国产色婷 | 精品欧美一区二区三区久久久| 久久无码AV中文出轨人妻| 久久精品一区二区| 性高湖久久久久久久久| 久久夜色精品国产www| 久久综合九色综合欧美狠狠| 亚洲国产精品高清久久久| 午夜精品久久久内射近拍高清| 国产精品成人无码久久久久久 | 久久精品国产亚洲沈樵| 亚洲精品乱码久久久久久自慰| 久久久免费观成人影院 | 久久只有这精品99| 久久精品国产精品亚洲| 久久综合久久综合久久综合| 精品久久久久香蕉网| 亚洲va久久久噜噜噜久久| 亚洲色欲久久久久综合网 | 久久综合香蕉国产蜜臀AV| 久久久久久国产精品无码下载| 亚洲国产视频久久| 国内精品久久久久影院薰衣草| 久久精品国产亚洲AV忘忧草18| 久久婷婷国产剧情内射白浆|