![마지막으로 도트 디렉터리의 디렉터리를 나열한 다음 도트 파일을 나열합니다.](https://linux55.com/image/38610/%EB%A7%88%EC%A7%80%EB%A7%89%EC%9C%BC%EB%A1%9C%20%EB%8F%84%ED%8A%B8%20%EB%94%94%EB%A0%89%ED%84%B0%EB%A6%AC%EC%9D%98%20%EB%94%94%EB%A0%89%ED%84%B0%EB%A6%AC%EB%A5%BC%20%EB%82%98%EC%97%B4%ED%95%9C%20%EB%8B%A4%EC%9D%8C%20%EB%8F%84%ED%8A%B8%20%ED%8C%8C%EC%9D%BC%EC%9D%84%20%EB%82%98%EC%97%B4%ED%95%A9%EB%8B%88%EB%8B%A4..png)
나는 ls
옵션을 알고 있지만 --group-directories-first
그것은 내가 달성하고 싶은 것이 아닙니다.
출력은 다음과 같아야 합니다. (이름 ASC로 정렬)
- 목차
- 숨겨진 디렉토리
- 숨겨진 파일
답변1
GNU 사용 ls
( 파일 목록을 정렬하지 않도록 -U
지시하는 옵션 ls
은 GNU 확장입니다):
ls -lUd -- *(/) .*(/) .*(^/)
그러나 문제는 이러한 glob 중 하나라도 일치하지 않으면 명령이 취소되므로 다음과 같이 할 수 있다는 것입니다.
myls() (
setopt cshnullglob
ls -lUd -- *(/) .*(/) .*(^/)
)
이는 csh
명령에서 하나 이상의 glob이 무언가로 확장되는 한 일치하지 않는 glob이 아무것도 확장되지 않는 동작을 시뮬레이션합니다.
zsh
glob은 절대로 확장되지 않으므로 이 .
두 ..
가지는 포함되지 않습니다.