cp -r은 특정 폴더를 복사하지 않고 해당 폴더의 내용만 복사합니다.

cp -r은 특정 폴더를 복사하지 않고 해당 폴더의 내용만 복사합니다.

다음과 비슷한 폴더 구조가 있습니다.

a/
 |b/
   | f1
   | f2
 |c/
   | f3
   | f4
 |d/
   | f5
   | f6

그 중 b, c, 및 d에는 기본 파일과 하위 디렉터리가 포함될 수 있습니다. 그런 다음 대상 폴더 e가 존재하는 대상 폴더가 있습니다 e. cp -r a/c e/or를 실행하면 cp -r a/d e/ c예상대로 내부 폴더 구조 d에 복사 됩니다. e그러나 실행해 보면 cp -r a/b e/결과가 동일하지 않습니다. a/b내용 자체는 복사되지 않고 내용 만 복사됩니다 b. 실행 명령과 거의 같습니다.cp -r a/b/* e/

ls또는 이 있는 폴더에는 특별한 내용이 없습니다 file. 이는 cand 와 동일한 권한을 가지며 d실행할 때 디렉토리로 나타납니다 file.

무슨 일이 일어나고 있는지 디버깅할 수 있는 방법이 있나요? 처음에는 Python에서 복사본을 실행하기 위해 하위 프로세스를 사용하는 문제에 직면했습니다.

import subprocess
import pathlib

for folder in pathlib.Path("a/").iterdir():
    if folder.is_dir():
        subprocess.run(["cp", "-r", str(folder), "e/"])

cp -r a/b e/그런 다음 명령줄에서 명령을 실행해 보았지만 동일한 문제가 발생했습니다.

답변1

분명히 컴퓨터는 X초마다 빈 폴더를 삭제하는 서비스를 실행하고 있습니다. 따라서 b그 이후에 발생한 사본은 e삭제되었습니다. 위에서 설명한 동작이 발생합니다.

관련 정보