답변:
이것은 "그 대신"이라는 제목 아래 나온다. 다음 스크립트는 대략 다음과 같은 동작을 에뮬레이션합니다. ls –l
차이점은 각 디렉토리 목록의 시작 부분에 서브 디렉토리를 그룹화한다는 것입니다.
#!/bin/sh - sort_ls_output() { sed -n -e '1s/^/1#/p' -e '1n' \ -e 's/^/#/' -e 's/^#d/2#d/' -e 's/^#/3#/' -e p \ | cat -n | sort -n -k2 -k1 | sed 's/[^#]*#//' } if [ $# = 0 ] then ls -l | sort_ls_output else for arg do echo if [ -d "$arg" ] then echo "${arg}:" ls -l "$arg" | sort_ls_output else ls -l "$arg" fi done fi
그것은 거친 상처입니다.
명령 줄에서 개별 파일 (not-directories)을 다음과 같은 방식으로 처리하지 않습니다. ls –l
그리고 옵션을 처리하지 않습니다 (예 : –a
).