program tip

폴더 이름별로 정렬 된 하위 폴더 및 해당 파일 목록을 가져 오는 방법

radiobox 2020. 11. 5. 07:53
반응형

폴더 이름별로 정렬 된 하위 폴더 및 해당 파일 목록을 가져 오는 방법


dir명령 줄을 사용 하여 파일 이름뿐만 아니라 폴더 이름으로 정렬 된 하위 폴더 및 파일 목록을 가져올 수 있습니까?

사용

디렉토리 / s / b / o : gn> f.txt

먼저 모든 하위 폴더를 가져온 다음 모든 하위 파일 만 가져옵니다. 예 :

 d:\root0\root1\folderA
 d:\root0\root1\folderB
 d:\root0\root1\file00.txt
 d:\root0\root1\file01.txt
 d:\root0\root1\folderA\fileA00.txt
 d:\root0\root1\folderA\fileA01.txt
 d:\root0\root1\folderB\fileB00.txt
 d:\root0\root1\folderB\fileB01.txt

그러나 나는 얻고 싶다.

d:\root0\root1\file00.txt
d:\root0\root1\file01.txt
d:\root0\root1\folderA
d:\root0\root1\folderA\fileA00.txt
d:\root0\root1\folderA\fileA01.txt
d:\root0\root1\folderB
d:\root0\root1\folderB\fileB00.txt
d:\root0\root1\folderB\fileB01.txt

[ "file00.txt"및 "file01.txt"도 목록 끝에있을 수 있습니다.]

감사,

아 타라


사용은 sort어떻습니까?

dir /b /s | sort

다음은 내가 테스트 한 예입니다.


dir /s /b /o:gn

d:\root0
d:\root0\root1
d:\root0\root1\folderA
d:\root0\root1\folderB
d:\root0\root1\file00.txt
d:\root0\root1\file01.txt
d:\root0\root1\folderA\fileA00.txt
d:\root0\root1\folderA\fileA01.txt
d:\root0\root1\folderB\fileB00.txt
d:\root0\root1\folderB\fileB01.txt

dir /s /b | sort

d:\root0
d:\root0\root1
d:\root0\root1\file00.txt
d:\root0\root1\file01.txt
d:\root0\root1\folderA
d:\root0\root1\folderA\fileA00.txt
d:\root0\root1\folderA\fileA01.txt
d:\root0\root1\folderB
d:\root0\root1\folderB\fileB00.txt
d:\root0\root1\folderB\fileB01.txt

디렉토리 만 가져 오려면 다음 /A:D매개 변수를 사용하십시오 .

dir /a:d /s /b | sort

Hej man, 왜 이것을 사용합니까?

dir / s / b / o : gn> f.txt (잘못됨)

'/ o'의 'g'가 뭔지 몰라 ??

이것을 확인하십시오 : http://www.computerhope.com/dirhlp.htm 또는 dir /? dir 도움을 위해

대신 이것을 사용해야합니다.

dir /s/b/o:n > f.txt (right one)


dir /b /a-d /s *.* will fulfill your requirement.


Command to put list of all files and folders into a text file is as below:

Eg: dir /b /s | sort > ListOfFilesFolders.txt


In command prompt go to the main directory you want the list for ... and type the command tree /f


create a vbs file and copy all code below. Change directory location to wherever you want.

Dim fso
Dim ObjOutFile

Set fso = CreateObject("Scripting.FileSystemObject")

Set ObjOutFile = fso.CreateTextFile("OutputFiles.csv")

ObjOutFile.WriteLine("Type,File Name,File Path")

GetFiles("YOUR LOCATION")

ObjOutFile.Close

WScript.Echo("Completed")

Function GetFiles(FolderName)
    On Error Resume Next

    Dim ObjFolder
    Dim ObjSubFolders
    Dim ObjSubFolder
    Dim ObjFiles
    Dim ObjFile

    Set ObjFolder = fso.GetFolder(FolderName)
    Set ObjFiles = ObjFolder.Files

    For Each ObjFile In ObjFiles
    ObjOutFile.WriteLine("File," & ObjFile.Name & "," & ObjFile.Path)
    Next

    Set ObjSubFolders = ObjFolder.SubFolders

    For Each ObjFolder In ObjSubFolders

        ObjOutFile.WriteLine("Folder," & ObjFolder.Name & "," & ObjFolder.Path)


        GetFiles(ObjFolder.Path)
    Next

End Function

Save the code as vbs and run it. you will get a list in that directory

참고URL : https://stackoverflow.com/questions/3447503/how-to-get-a-list-of-sub-folders-and-their-files-ordered-by-folder-names

반응형