다른 하드 드라이브에 포함된 폴더 목록을 알파벳 순서(단 하나의 단일 txt 또는 스프레드시트)로 인쇄하는 CLI 명령이 있습니까?
예를 들어 다음과 같은 구성이 있다고 가정해 보겠습니다.
/sda/Alfa/File 1
/sdb/Bravo/File 5
/sdb/Bravo/File 20
/sdc/Delta/File 14
/sdc/Delta/File 11
내가 출력하고 싶은 것은 폴더가 다음과 같이 알파벳 순서로 나열되는 TXT 또는 스프레드시트 파일입니다.
File 1
File 5
File 11
File 14
File 20
CLI에서 이 작업을 수행할 수 있습니까?
답변1
find /sda /sdb /sdc -type f -printf '%f\n' | sort
예를 들어:
$ tree sd[a-c]
sda
└── Alfa
└── File 1
sdb
└── Bravo
├── File 20
└── File 5
sdc
└── Delta
├── File 11
└── File 14
$ find sd[a-c] -type f -printf '%f\n' | sort
File 1
File 11
File 14
File 20
File 5
참고하세요이것이는 일반적으로 알파벳순, 보다 정확하게는 사전식 순서로 의미됩니다. ( 5
문자가 1
문자 앞에 오지 않으므로 5
문자열은 14
문자열 - 앞에 올 수 없습니다 05
.)
설명:
find
물건을 찾아주는 프로그램입니다.
-type f
디렉토리(또는 기타 특수 파일)가 아닌 일반 파일을 원한다는 것을 나타냅니다.- 의 일반적인 출력은
find
파일의 경로이므로 을 얻지만sda/Alfa/File 1
를 사용하면 파일 이름만 인쇄하도록-printf '%f\n'
지시합니다 .find