tar
한 디렉토리에서 다른 디렉토리로 복사를 사용하려고 합니다 my_folder
. 이 코드를 조정하고 싶은데 폴더 추출 시 상위 디렉터리를 제거하는 방법을 모르겠습니다.
tar cf - /f1/f2/my_folder | tar -C /f1/f3/f4/ -xf -
누구든지 어떤 아이디어가 있습니까?
답변1
먼저 명시적으로 만들 수 있습니다 cd
.
( cd /f1/f2/my_folder && tar -c -f - . ) | tar -x -f - -C /f1/f2/f4
...그러나 이 옵션은 이미 익숙하므로 -C
파이프라인의 아카이브 생성 측면에서도 사용할 수 있습니다.
tar -c -f - -C /f1/f2/my_folder . | tar -x -f - -C /f1/f2/f4
my_folder
내용뿐만 아니라 디렉토리도 복사하고 싶다면 ,
tar -c -f - -C /f1/f2 my_folder | tar -x -f - -C /f1/f2/f4
개인적으로 나는 이것이 모든 옵션에 대해 약간 혼란스럽다고 생각하므로 아마도 다음을 사용할 것입니다 rsync
.
rsync -a /f1/f2/my_folder/ /f1/f2/f4
또는 디렉토리(내용뿐만 아니라)를 복사하려면,
rsync -a /f1/f2/my_folder /f1/f2/f4
(소스 경로의 미묘한 차이에 유의하세요.)