주어진 디렉토리에있는 파일을 나열하는 쉘 스크립트 및 파일 또는 디렉토리인지 여부

Ant695

현재 일부 bash 스크립팅을 배우고 주어진 디렉토리의 모든 파일을 나열하고 파일인지 디렉토리인지 여부를 나타내는 질문에 문제가 있습니다. 내가 가지고있는 문제는 현재 디렉토리 만 얻거나 디렉토리를 지정하면 디렉토리라고 말할 것입니다. / home / user / shell_scripts는 shell_scipts가 그 안에 포함 된 파일이 아니라 디렉토리를 반환합니다. 이것이 내가 지금까지 가지고있는 것입니다.

dir=$dir
for file in $dir; do
    if [[ -d $file ]]; then
        echo "$file is a directory"
    if [[ -f $file ]]; then
        echo "$file is a regular file"
    fi
done
성분 10

귀하의 라인 :

for file in $dir; do

$dir단일 디렉토리 문자열로 확장됩니다 . 해야 할 일은 디렉토리의 파일 목록으로 확장하는 것입니다. 다음을 사용하여이를 수행 할 수 있습니다.

for file in "${dir}/"* ; do

그러면 "${dir}/"*섹션이 현재 디렉토리의 이름 전용 목록으로 확장됩니다 . Biffen이 지적했듯이 이것은 파일 목록에 file공백이 포함 된 부분 파일 이름으로 끝나지 않도록 보장해야합니다 .

디렉토리로 재귀하려면 dir사용 find하는 것이 더 나은 방법 일 수 있습니다. 간단히 사용 :

for file in $( find ${dir} ); do

간단하지만 공백이있는 파일이나 디렉토리는 처리 하지 않습니다 . 이 때문에 루프를 삭제하고 한 번에 출력을 생성하고 싶을 것입니다. 이것은 당신이 원하는 것과 약간 다를 수 있지만, 특히 많은 수의 파일에서 읽기 쉽고 훨씬 더 효율적일 것입니다. 예를 들어, 모든 디렉토리를 나열하려면 :

find ${dir} -maxdepth 1 -type d

파일을 나열하려면 :

find ${dir} -maxdepth 1 -type f

아래 디렉토리로 반복하려면 -maxdepth 1

이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.

침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제

에서 수정
0

몇 마디 만하겠습니다

0리뷰
로그인참여 후 검토

관련 기사

분류에서Dev

패턴에 따라 디렉토리, 하위 디렉토리 및 파일을 만드는 쉘 스크립트

분류에서Dev

파일 A 또는 B가 디렉토리에 있는지 확인하는 쉘 스크립트

분류에서Dev

쉘 스크립트를 사용하여 디렉토리에서 ".c"로 끝나지 않는 파일을 어떻게 삭제할 수 있습니까?

분류에서Dev

쉘 스크립트, 파일 디렉토리는 어디에 생성됩니까?

분류에서Dev

쉘 스크립트에서 루핑하는 동안 디렉토리 및 파일 이름을 얻는 방법

분류에서Dev

디렉토리 트리 및 링크 파일을 복사하는 Linux 쉘 스크립트

분류에서Dev

패턴과 일치하는 파일에 대한 쉘 스크립트 및 디렉토리 당 발생 횟수

분류에서Dev

경로가 쉘 스크립트의 디렉토리 또는 파일인지 확인하십시오.

분류에서Dev

디렉토리 이름을 읽고 다른 디렉토리에 같은 이름을 가진 .txt 파일을 만드는 쉘 스크립트

분류에서Dev

특정 접두어로 시작하는 파일이 쉘 스크립트의 디렉토리에 있는지 테스트하는 방법

분류에서Dev

10 초 안에 디렉토리에서 들어오는 파일 수를 계산하는 쉘 스크립트

분류에서Dev

쉘 스크립트를 사용하여 디렉토리에있는 일부 불규칙한 이름의 파일 호출

분류에서Dev

LINUX-디렉토리 트리에 쓸 권한이있는 모든 파일을 찾고 나열하는 쉘 스크립트

분류에서Dev

지정된 디렉토리에서 특정 파일을 제거하는 쉘 스크립트 작성

분류에서Dev

Lotus Notes 스크립트에서 디렉토리 주소 및 파일 이름을 검색하는 방법

분류에서Dev

쉘 스크립트를 사용하여 모든 하위 디렉토리 및 파일을 포함한 디렉토리 및 파일을 어떻게 백업 할 수 있습니까?

분류에서Dev

쉘 스크립트 : 파일을 디렉토리 및 하위 디렉토리로 정렬

분류에서Dev

스크립트의 동일한 디렉토리에있는 파일 인수로 쉘 스크립트를 실행하는 방법은 무엇입니까?

분류에서Dev

PHP 디렉토리 및 하위 디렉토리에서 비어있는 모든 파일을 삭제합니다.

분류에서Dev

디렉토리 외부의 쉘 파일에서 컴파일 된 Java 또는 C 프로그램을 어떻게 실행할 수 있습니까?

분류에서Dev

목록에 디렉토리 및 내용을 표시하는 쉘 스크립트

분류에서Dev

쉘 스크립트에서 하위 디렉토리의 파일을 다른 하위 디렉토리에 링크하는 방법

분류에서Dev

디렉토리에있는 여러 파일의 내용을 정렬하는 스크립트

분류에서Dev

디렉토리에서 1GB 이상의 모든 파일을 압축하는 쉘 스크립트

분류에서Dev

주어진 디렉토리에서 여러 파일을 단일 파일로 병합하는 방법

분류에서Dev

한 디렉토리에서 다른 디렉토리로 파일을 심볼릭 링크하는 쉘 스크립트가 손상되었습니다.

분류에서Dev

Unix C ++의 폴더 루트에있는 파일 및 디렉토리 나열

분류에서Dev

주어진 디렉토리의 파일 및 하위 디렉토리 인쇄

분류에서Dev

디렉토리에 숨겨진 파일 만 있고 디렉토리가 없는지 확인하십시오.

Related 관련 기사

  1. 1

    패턴에 따라 디렉토리, 하위 디렉토리 및 파일을 만드는 쉘 스크립트

  2. 2

    파일 A 또는 B가 디렉토리에 있는지 확인하는 쉘 스크립트

  3. 3

    쉘 스크립트를 사용하여 디렉토리에서 ".c"로 끝나지 않는 파일을 어떻게 삭제할 수 있습니까?

  4. 4

    쉘 스크립트, 파일 디렉토리는 어디에 생성됩니까?

  5. 5

    쉘 스크립트에서 루핑하는 동안 디렉토리 및 파일 이름을 얻는 방법

  6. 6

    디렉토리 트리 및 링크 파일을 복사하는 Linux 쉘 스크립트

  7. 7

    패턴과 일치하는 파일에 대한 쉘 스크립트 및 디렉토리 당 발생 횟수

  8. 8

    경로가 쉘 스크립트의 디렉토리 또는 파일인지 확인하십시오.

  9. 9

    디렉토리 이름을 읽고 다른 디렉토리에 같은 이름을 가진 .txt 파일을 만드는 쉘 스크립트

  10. 10

    특정 접두어로 시작하는 파일이 쉘 스크립트의 디렉토리에 있는지 테스트하는 방법

  11. 11

    10 초 안에 디렉토리에서 들어오는 파일 수를 계산하는 쉘 스크립트

  12. 12

    쉘 스크립트를 사용하여 디렉토리에있는 일부 불규칙한 이름의 파일 호출

  13. 13

    LINUX-디렉토리 트리에 쓸 권한이있는 모든 파일을 찾고 나열하는 쉘 스크립트

  14. 14

    지정된 디렉토리에서 특정 파일을 제거하는 쉘 스크립트 작성

  15. 15

    Lotus Notes 스크립트에서 디렉토리 주소 및 파일 이름을 검색하는 방법

  16. 16

    쉘 스크립트를 사용하여 모든 하위 디렉토리 및 파일을 포함한 디렉토리 및 파일을 어떻게 백업 할 수 있습니까?

  17. 17

    쉘 스크립트 : 파일을 디렉토리 및 하위 디렉토리로 정렬

  18. 18

    스크립트의 동일한 디렉토리에있는 파일 인수로 쉘 스크립트를 실행하는 방법은 무엇입니까?

  19. 19

    PHP 디렉토리 및 하위 디렉토리에서 비어있는 모든 파일을 삭제합니다.

  20. 20

    디렉토리 외부의 쉘 파일에서 컴파일 된 Java 또는 C 프로그램을 어떻게 실행할 수 있습니까?

  21. 21

    목록에 디렉토리 및 내용을 표시하는 쉘 스크립트

  22. 22

    쉘 스크립트에서 하위 디렉토리의 파일을 다른 하위 디렉토리에 링크하는 방법

  23. 23

    디렉토리에있는 여러 파일의 내용을 정렬하는 스크립트

  24. 24

    디렉토리에서 1GB 이상의 모든 파일을 압축하는 쉘 스크립트

  25. 25

    주어진 디렉토리에서 여러 파일을 단일 파일로 병합하는 방법

  26. 26

    한 디렉토리에서 다른 디렉토리로 파일을 심볼릭 링크하는 쉘 스크립트가 손상되었습니다.

  27. 27

    Unix C ++의 폴더 루트에있는 파일 및 디렉토리 나열

  28. 28

    주어진 디렉토리의 파일 및 하위 디렉토리 인쇄

  29. 29

    디렉토리에 숨겨진 파일 만 있고 디렉토리가 없는지 확인하십시오.

뜨겁다태그

보관