ls
펑키 한 문자 (공백 \n
,, ...)를 깨뜨릴 수 있기 때문에 출력을 구문 분석하는 것이 위험한 경우 디렉토리의 파일 수를 아는 가장 좋은 방법은 무엇입니까?
나는 보통 find
이 파싱을 피하기 위해 의존 하지만, 마찬가지로 find mydir | wc -l
같은 이유로 깨질 것입니다.
나는 지금 Solaris에서 일하고 있지만 가능한 한 다른 유니스와 다른 쉘에서 이식 가능한 답변을 찾고 있습니다.
find
파일의 수를 재귀 적으로 가져옵니다 ( -maxdepth 1
원치 않는 경우에 사용) . find mydir -maxdepth 1 -type f -printf \\n | wc -l
파일 이름의 특수 문자는 처음에 인쇄되지 않으므로 특수 문자를 처리해야합니다.