dir命令缺陷

2018-05-16 13:50 更新

一、


    —— pengfei


@echo off

for /f "tokens=*" %%i in ('dir /s /a-d /b "D:\Share iles\資料\*f*.*"') do (

    echo %%i

    echo %%i>>file.txt

)

pause


提取這個(gè)文件夾下的所有存在f的文件.

資料\*f*.*


提取到的文件會(huì)生成到file.txt中


文件夾弄錯(cuò)啦!


這里正常提取到ftp.txt


ok 問題出現(xiàn)了


提取到娟平 014.jpg等不存以f字符, 但中間有空格的文件.


D:\Share iles\資料\照片\花花公子\11961873_218529.jpg


這個(gè)文件存在_符號(hào).


D:\Share iles\資料\ADSL\ftp2.txt

D:\Share iles\資料\照片\1\娟平 014.jpg

D:\Share iles\資料\照片\1\娟平 007.jpg

D:\Share iles\資料\照片\1\娟平 015.jpg

D:\Share iles\資料\照片\1\娟平 016.jpg

D:\Share iles\資料\照片\1\娟平 017.jpg

D:\Share iles\資料\照片\1\娟平 018.jpg

D:\Share iles\資料\照片\1\娟平 019.jpg

D:\Share iles\資料\照片\1\娟平 104.jpg

D:\Share iles\資料\照片\1\娟平 105.jpg

D:\Share iles\資料\照片\1\娟平 106.jpg

D:\Share iles\資料\照片\1\娟平 107.jpg

D:\Share iles\資料\照片\1\娟平 108.jpg

D:\Share iles\資料\照片\1\娟平 109.jpg

D:\Share iles\資料\照片\1\娟平 114.jpg

D:\Share iles\資料\照片\1\娟平 115.jpg

D:\Share iles\資料\照片\1\娟平 116.jpg

D:\Share iles\資料\照片\1\娟平 117.jpg

D:\Share iles\資料\照片\1\娟平 118.jpg

D:\Share iles\資料\照片\1\娟平 119.jpg

D:\Share iles\資料\照片\1\娟平 124.jpg

D:\Share iles\資料\照片\1\娟平 128.jpg

D:\Share iles\資料\照片\1\娟平 134.jpg

D:\Share iles\資料\照片\1\娟平 138.jpg

D:\Share iles\資料\照片\1\娟平 146.jpg

D:\Share iles\資料\照片\1\娟平 156.jpg

D:\Share iles\資料\照片\1\娟平 166.jpg

D:\Share iles\資料\照片\1\娟平 176.jpg

D:\Share iles\資料\照片\1\娟平 186.jpg

D:\Share iles\資料\照片\3\cmy8543_61.gif

D:\Share iles\資料\照片\3\misukhot_44.gif

D:\Share iles\資料\照片\3\misukhot_80.gif

D:\Share iles\資料\照片\3\refiju_42.jpg

D:\Share iles\資料\照片\3\refiju_43.jpg

D:\Share iles\資料\照片\3\zkmrf005-qqyeri2.gif

D:\Share iles\資料\照片\7\爬山 017.jpg

D:\Share iles\資料\照片\7\照片 002.jpg

D:\Share iles\資料\照片\5\照片 042.jpg

D:\Share iles\資料\照片\5\照片 032.jpg

D:\Share iles\資料\照片\5\照片 022.jpg

D:\Share iles\資料\照片\5\照片 012.jpg

D:\Share iles\資料\照片\5\照片 006.jpg

D:\Share iles\資料\照片\5\照片 002.jpg

D:\Share iles\資料\照片\花花公子\11961840_218524.jpg

D:\Share iles\資料\照片\花花公子\11961851_218527.jpg

D:\Share iles\資料\照片\花花公子\11961873_218529.jpg


二、


  —— namejm


比較如下兩段代碼:

1、

@echo off

for /f "tokens=*" %%i in ('dir /a /b /s "D:\test"') do (

    echo %%~ai

)

pause


2、

@echo off

for /f %%i in ('dir /a /b "D:\test.txt"') do (

    echo %%~ai

)

pause


1的代碼能正確取到每個(gè)文件的屬性,但是,2的代碼取到的是當(dāng)前目錄下test.txt的屬性,

解決辦法是把2中的'dir /a /b "D:\test.txt"'改為"d:\test.txt"



以上內(nèi)容是否對(duì)您有幫助:
在線筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號(hào)
微信公眾號(hào)

編程獅公眾號(hào)