답변:
당신이 특히하지 않으면 쉬운 방법은, 필요 사용하는 -C
말 tar
다른 디렉토리로 변경하려면 명령 줄에서 아카이브의 전체 경로를 지정하는 것입니다. 그런 다음 아카이브 내에서 원하는 디렉토리 구조를 작성하기를 원하는 디렉토리에있을 수 있습니다.
다음은 아카이브를 생성합니다 /var/www/file.tar.gz
넣어 file1
어떤에서 아카이브 경로 정보와, 그 안에 (즉, 될 일이 무엇이든) 현재 디렉토리에서.
tar czf /var/www/file.tar.gz file1
경로 (아카이브, 구성 파일 또는 둘 다)는 물론 상대적 일 수 있습니다. 경우 file1
에 /tmp
, 당신은에있는 /var/spool
과에 보관 만들려면 /var/www
당신이 뭔가를 사용할 수를 :
tar czf ../www/file1.tar.gz /tmp/file1
테마에는 백만 가지 변형이 있지만 시작해야합니다. 실제로 v
무엇을하는지 보려면 플래그를 추가 하십시오 tar
.
$PWD
예제에서 절대 경로를 사용하는 것이 가장 안전 해 보였습니다.
file1
tar 아카이브 의 경로는 입니다 /tmp
. 이것은 당신이 기대할 수도 있고 아닐 수도 있습니다.
압축 된 데이터를 스트림 (-)으로 바꾸고 원하는 곳 어디에서나 쉽게 이름을 바꾸고 찾을 수 있습니다 (>). 또한 항상 상대 경로 (./)를 압축하여 압축을 풀 때 쉽게 처리 할 수 있습니다)
tar -cvf - ./dir-to-compress/* > /location-of-new-file/filename.tar
-C
훨씬 관용적이며 짧습니다.
나는 생각해야한다 :
tar czf file.tar.gz -C /var/www/ file1
어느 것이 나를 위해 작동합니다. 디렉토리를 변경하고 파일을 선택하도록 지시합니다.
-C
(모호하게 문서화 된 것처럼 이상하지 않음) 의 의미를 오해 한 것 같습니다 . 자세한 내용은 serverfault.com/q/416002/86283을 참조하십시오 .