/etc/
예를 들어 특정 디렉터리에 없으면 해당 디렉터리에 있는 디렉터리만 나열하고 싶습니다(숨겨진 디렉터리 포함).
숨겨진 디렉터리를 포함한 모든 디렉터리를 나열하려면 다음 명령을 사용합니다.
ls -d */ .*/
이 명령을 사용하여 목록을 작성하고 싶습니다 /etc
.
ls /etc
이렇게 할 수 있지만 첫 번째 항목과 결합하여 디렉토리만 나열하고 싶습니다.
ls -d */ .*/ /etc
또는
ls /etc -d */ .*/
작동 안함. 왜?
답변1
*/
과 .*/
은(는) 직접 전달된 인수가 아니기 때문에 작동하지 않습니다 ls
. 대신 셸에 의해 확장된 전역 변수이므로 전달되는 현재 디렉터리에서 일치하는 파일 이름 목록을 제공합니다.ls
다른 디렉토리에 해당하는 것은 /etc
(예를 들어)
ls -d /etc/*/ /etc/.*/
쉘이 중괄호 확장을 지원하는 경우 다음과 같이 더 간결하게 작성할 수 있습니다.
ls -d /etc/{,.}*/
답변2
find /etc/ -maxdepth 1 -type d
다른 디렉토리 내에 있는 숨겨진 디렉토리를 포함하여 디렉토리만 나열하려면 위 명령을 사용하십시오.