나는 ls
옵션을 알고 있지만 --group-directories-first
그것이 정확히 내가 달성하고 싶은 것이 아닙니다.
출력은 다음과 같아야 합니다. (이름 ASC로 정렬)
- 디렉토리
- 숨겨진 디렉토리
- 숨겨진 파일
답변1
GNU 사용 ls
( 파일 목록을 정렬하지 않도록 -U
지정하는 옵션은 ls
GNU 확장입니다):
ls -lUd -- *(/) .*(/) .*(^/)
하지만 문제는 해당 글로브 중 하나라도 일치하지 않으면 명령이 취소되므로 다음을 수행할 수 있다는 것입니다.
myls() (
setopt cshnullglob
ls -lUd -- *(/) .*(/) .*(^/)
)
이는 csh
명령에 무언가로 확장되는 글로브가 하나 이상 있는 한 일치하지 않는 글로브가 아무것도 확장되지 않는 동작을 에뮬레이트합니다.
glob 은 zsh
절대 확장되지 않으므로 .
이 ..
두 개는 포함되지 않습니다.