programing

(dir/b > 파일)에 해당합니다.txt) PowerShell에서

css3 2023. 10. 22. 20:18

(dir/b > 파일)에 해당합니다.txt) PowerShell에서

dir/b > files.txt

유니코드 부호를 보존하기 위해서는 파워쉘에서 해야 할 것 같습니다.

Get-ChildItem | Select-Object -ExpandProperty Name > files.txt

또는 그보다 짧음:

ls | % Name > files.txt

하지만, 당신은 쉽게 같은 일을 할 수 있습니다.cmd:

cmd /u /c "dir /b > files.txt"

/u스위치가 알려줍니다.cmd파일로 리디렉션된 것을 유니코드로 기록합니다.

Get-ChildItem실제로는 이미 다음과 같은 것에 대한 깃발을 가지고 있습니다.dir /b:

Get-ChildItem -name(또는dir -name)

간단히 말하면 다음과 같습니다.

dir -Name > files.txt

PSH에서dir(어떤 별칭이 있는지)Get-ChildItem)에서 개체를 제공하므로(다른 답변에 나와 있음) 원하는 속성을 선택해야 합니다.둘 중 하나는Select-Object()select원래 개체의 속성의 하위 집합을 사용하여 사용자 지정 개체를 만듭니다(또는 추가 속성을 추가할 수도 있습니다).

그러나 이 경우 포맷 단계에서 수행하는 것이 가장 간단할 것입니다.

dir | ft Name -HideTableHeaders | Out-File files.txt

(ftformat-table.)

다른 문자 인코딩을 원하는 경우files.txt(out-file기본적으로 UTF-16을 사용할 것입니다)를 사용합니다.-encodingflag, 다음을 추가할 수도 있습니다.

dir | ft Name -HideTableHeaders | Out-File -append -encoding UTF8 files.txt

파워셸은 객체를 다루기 때문에 파이프의 각 객체를 처리할 방법을 지정해야 합니다.

이 명령은 각 개체의 이름만 인쇄합니다.

dir | ForEach-Object { $_.name }

방금 이 훌륭한 게시물을 찾았지만 하위 디렉터리에도 필요했습니다.

DIR /B /S >somefile.txt

용도:

Get-ChildItem -Recurse | Select-Object -ExpandProperty Fullname | Out-File Somefile.txt

또는 단축 버전:

ls | % fullname > somefile.txt

사용 중인 항목

(dir -r).FullName > somefile.txt

필터를 사용하여*.log:

(dir -r *.log).FullName > somefile.txt

참고:

dir         is equal to `gci` but fits the naming used in cmd
-r          recursive (all subfolders too)
.FullName   is the path only

언급URL : https://stackoverflow.com/questions/5536708/equivalent-of-dir-b-files-txt-in-powershell