숨겨진 모든 파일과 디렉토리를 재귀 적으로 나열하는 방법은 무엇입니까?


13

모든 숨겨진 파일과 디렉토리를 나열하고 결과를 파일에 저장하고 싶습니다.

이것에 대한 명령이 있습니까?

답변:


13

GNU find를 사용하면 할 수 있습니다

find /path -path '*/.*' -ls | tee output-file

편집하다

숨겨진 디렉토리에 숨겨져 있지 않은 항목을 표시하지 않으려면

find /path -name '.*' >output-file

(표시된대로 tee출력을 볼 필요가없는 경우 피할 수 있으며 -ls옵션은 필요한 경우에만 사용해야합니다).


2
또는 >대신 | tee터미널의 전체 출력을보고 싶지 않은 경우.
rozcietrzewiacz

당신은 또한 -ls이것에 대해 필요하지 않습니다 . 그것은 생각을 파싱하기 위해 여분의 지저분한 정보 일 수 있습니다.
Caleb

여기에는 숨겨진 디렉토리의 내용이 나열되어 있는데, 이는 질문이 요구하는 내용이 아닙니다 (아마도 모호합니다).
Gilles 'SO- 악마 그만해'

@ Gilles : 실제로 모호합니다. 답변을 수정 함
enzotib

첫 번째는 GNU에 국한되지 않습니다. -path2008 년 이후 POSIX입니다. -ls표준은 아니지만 매우 일반적입니다.
Stéphane Chazelas

10

를 포함하여 현재 디렉토리에 숨겨진 파일 및 디렉토리를 나열 .하고 ..:

echo .*

현재 디렉토리 및 해당 서브 디렉토리의 숨겨진 파일 및 디렉토리를 재귀 적으로 나열하려면 다음을 수행하십시오.

find . -name '.*'

결과를 파일로 저장하려면 리디렉션을 사용하십시오.

find . -name '.*' >output-file.txt

1

zsh( glob 한정자를 사용하여 D) :

print -rl ./**/.*(D)

숨겨진 디렉토리에 숨겨지지 않은 파일을 포함 시키려면 :

setopt extendedglob
print -rl ./**/*~^*/.*(D)

0

실제로 동일한 명령 행에 동일한 인수를 여러 번 넣을 수 있습니다.

find /storage/????-????/ -iname '.*' -iname "*" | tee -a file-list-micSD-20190801163729.fli

tee -a명령은 명령의 출력 (또는 표시 할 수 있습니다 표준 출력을 파일로 작성 whie 동시에). 이 -a옵션은 클로버 링 을 방지 하고 대신 정보를 대상 출력 파일에 추가합니다.

/storage/????-????/예제 경로입니다. 최신 Android 휴대 전화의 MicroSD 카드로가는 경로입니다 (Android 6.0 이후로 명령 수가 적지 만 여전히 많고 크게 증가한 Android 용 터미널 응용 프로그램도 있습니다). 이전에는 MicroSD 카드였습니다 /storage/extSdCard. 이제는 볼륨 일련 번호입니다.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.