숨겨진 파일이없는 cp -r


89

두 개의 디렉토리가 있고 하나는 비어 있습니다.

첫 번째 디렉토리에는 숨겨진 파일이있는 많은 하위 디렉토리가 있습니다. I 때 cp -r두 번째로 첫 번째 디렉터리의 내용은 숨겨진 파일도 복사됩니다. 탈출 할 수있는 해결책이 있습니까?


그것은 가능 하죠,하지만 복사 한 후이를 제거하는 것은 간단 수 있습니다
카 롤리 바스

6
예,하지만 숨겨진 파일을 다른 위치로 복사하는 것은 제 경우 보안 위험입니다.
Rahul

답변:


127

rsync를 사용할 수 있습니다.

rsync -av --exclude=".*" src dest

1
cp와 비교할 때 오버 헤드가 있습니까?
Rahul

2
@Rahul이 벤치 마크 그것을 나에게 발생하지 않았다,하지만 난 당신이 그것에 대해 걱정하지한다고 생각
유진 Yarmash

3
멋지게 작동합니다! 감사합니다! 정보를 위해 rsync는 파일 크기가 클 때 좋지만 작은 파일의 경우 cp와 같습니다.
Rahul

26

넌 할 수있어

cp -r SRC_DIR/* DEST_DIR

SRC_DIR 수준의 모든 .files 및 .dirs를 제외하지만 여전히 다음 수준의 하위 디렉터리에 숨겨진 파일을 복사합니다.


6
그게 바로 문제입니다 .. :)
라훌

9
하지만 GIT-Repos에서 작동합니다. 전체 GIT-Index를 .git /에 복사하지 않으려면 ...
Sedat Kilinc

1
나는 이것이 내가 찾던 해결책이기 때문에이 대답을 +했습니다. 나는 트리의 모든 보이지 않는 것을 제외하고 싶지 않고 루트 수준의 보이지 않는 것만 제외하고 싶지 않습니다!
l008com

또 다른 변형 cp SOURCE/[!.]* TARGET.
Carel

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.