MinGW ls로 먼저 디렉토리 나열


3

나는 최근에 윈도우 7 머신에서 Cygwin 대신 MinGW를 사용하기 시작했다. MinGW에서 약간의 문제가있다. ls. Cygwin에서, ls ~을 가지고있다. --group-directories-first 옵션을 사용하면 분명히 디렉토리가 다른 파일 유형보다 먼저 나열됩니다. 그러나 MinGW는이 옵션이없는 것 같아서 대체 할 수 없습니다. 존재하나요?

답변:


1

이것은 "그 대신"이라는 제목 아래 나온다. 다음 스크립트는 대략 다음과 같은 동작을 에뮬레이션합니다. 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 ).

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.