다른 디렉토리에 tar 아카이브를 작성하는 방법은 무엇입니까? 싶습니다. 나는이 명령을 시도했다 : tar

현재 디렉토리가 아닌 다른 디렉토리에 tar 아카이브를 만들고 싶습니다.

나는이 명령을 시도했다 :

tar czf file.tar.gz file1 -C /var/www/

그러나 현재 디렉토리에 아카이브를 만듭니다. 왜?



답변

당신이 특히하지 않으면 쉬운 방법은, 필요 사용하는 -Ctar다른 디렉토리로 변경하려면 명령 줄에서 아카이브의 전체 경로를 지정하는 것입니다. 그런 다음 아카이브 내에서 원하는 디렉토리 구조를 작성하기를 원하는 디렉토리에있을 수 있습니다.

다음은 아카이브를 생성합니다 /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.


답변

압축 된 데이터를 스트림 (-)으로 바꾸고 원하는 곳 어디에서나 쉽게 이름을 바꾸고 찾을 수 있습니다 (>). 또한 항상 상대 경로 (./)를 압축하여 압축을 풀 때 쉽게 처리 할 수 ​​있습니다)

tar -cvf - ./dir-to-compress/* > /location-of-new-file/filename.tar

답변

나는 생각해야한다 :
tar czf file.tar.gz -C /var/www/ file1

어느 것이 나를 위해 작동합니다. 디렉토리를 변경하고 파일을 선택하도록 지시합니다.


답변

완벽하게 작동

cd /home; tar -czvf - /var/log/* > varlog.tar.gz