많은 파일이 포함된 디렉토리가 있습니다. 파일을 하위 디렉터리로 이동하면 mv myfile.* ./subdirectory/
약 3초 정도 지연이 발생합니다. 그런 다음 파일이 이동됩니다.
이러한 지연을 방지하려면 어떻게 해야 합니까?
배경은 이 디렉토리를 정렬하고 싶다는 것입니다. 그래서 구성 파일의 내용을 확인하고 구성 파일과 다른 2개의 파일을 특수 하위 디렉터리로 이동하는 스크립트를 작성했습니다.
답변1
수십만 개 이상의 파일이 있는 경우 보고 있는 시간은 쉘이 glob 의 가능한 모든 확장을 인식하는 데 걸리는 시간입니다 myfile.*
. 즉, myfile.
임의 개수의 다른 문자로 시작하는 모든 파일 이름을 찾습니다 . 따라서 파일이 많으면 확인해야 할 파일이 많아지고 약간의 지연이 발생한다는 의미입니다.
지연을 피하려면 실제 파일 이름을 사용하십시오 mv myfile.whatever ./subdirectory/
. 이것이 옵션이 아니고 파일 이름을 동적으로 찾아야 하는 경우, 하나의 디렉토리에 너무 많은 파일이 없도록 더 많은 하위 디렉토리를 사용하거나 대기를 허용하는 방법을 배우십시오.