디렉토리에서 파일 수를 계산하지만 재귀 적으로 계산하지 않는 방법 수행하는 방법을 보여주는

간단한 질문입니다. 하위 디렉토리를 포함하여 수행하는 방법을 보여주는 답변 을 보았지만 현재 디렉토리에만 폴더가 아닌 파일 수를 알고 싶습니다. 감사.



답변

ls -F |grep -v / | wc -l
  1. ls -F 모든 파일을 나열하고 표시기 (* / => @ | 중 하나)를 항목에 추가하십시오.
  2. grep -v /슬래시를 포함 하지 않는 모든 문자열을 유지
  3. wc -l 카운트 라인

답변

이 oneliner를 사용해보십시오 :

find -maxdepth 1 -type f | wc -l

답변

이 시도

ls -al | grep ^[-] | wc -l
  1. ls -al -긴 목록 형식으로 모든 파일을 나열하십시오.
  2. grep ^[-] -ls -al을 사용하여 파일 목록을 표시 할 때 일반 파일을 나타내는 기호 인 “-“로 시작하는 문자열을 검색합니다.
  3. wc -l -카운트 라인

답변

Bash 와 함께 플레이하고 싶기 때문에 톰의 답변 을 추가하고 싶습니다 . 여기 간다:

echo "Directory $(pwd) has $(ls -F |grep -v / | wc -l) files"

Bellow는 내 /data디렉토리 의 예입니다 .

Directory /data has 580569 file(s).

그리고 내 설명은 다음과 같습니다.

  1. echo double-quoted-message 원하는 메시지를 인쇄합니다.
  2. $(any-desirable-valid-command)큰 따옴표로 묶인 메시지 안에 echo관련 명령 실행 결과가 인쇄됩니다.
  3. pwd 현재 디렉토리를 인쇄합니다.
  4. ls -F모든 파일을 나열하고 표시기 (* / => @ | 중 하나)를 항목에 추가합니다. 나는 이것을 thom ‘s answer 에서 복사했습니다 .
  5. grep -v /일반 텍스트를 검색하는 명령이며 -v /매개 변수는 슬래시가 포함되지 않은 모든 문자열을 유지합니다.
  6. wc -l 라인 카운팅을 인쇄합니다.

나는이 질문이 3 세라는 것을 알고 있습니다. 또 다른 대답을 추가하려는 충동을 가질 수는 없습니다.


답변

이 경우 tree시스템에 설치하면이 명령을 사용할 수 있습니다 :

tree -L 1 /path/to/your/directory | tail -n 1

해당 디렉토리의 파일 및 디렉토리 수를 표시합니다.

-L n 검색 깊이를 보여줍니다.

당신은 설치할 수 있습니다 treesudo apt-get install tree.


답변

특정 확장자를 가진 총 파일 수를 계산하려면 다음을 입력하십시오.

ls|grep jpg |wc -l