tar.gz를 사용하여 루트 디렉터리에서 파일을 패키지합니다.

tar.gz를 사용하여 루트 디렉터리에서 파일을 패키지합니다.

루트 디렉터리에서 tar.gz를 사용하여 .csv 파일을 패키징해 보았습니다.

파일은 myfile.csv다음 위치에 있습니다 /mnt/sdb1/ . 따라서 전체 파일 이름은 다음과 같습니다./mnt/sdb1/myfile.csv

tar.gz를 저장해 보았습니다./mnt/sdb1/old_files

나는 이것을 시도했습니다 :

tar -czf /mnt/sdb1/old_files/new.tar.gz mnt/sdb1/myfile.csv

그러나 파일을 추출하면 파일이 포함된 "sdb1"이라는 다른 폴더가 포함된 "mnt"라는 폴더가 추출됩니다.

모든 디렉토리를 복사하는 대신 파일을 압축하는 것이 가능합니까?

답변1

--directory다음 옵션을 사용하십시오 man tar.

-C,- -디렉터리 DIR

디렉토리 DIR 변경

즉:

tar -C /mnt/sdb1/ -czf /mnt/sdb1/old_files/new.tar.gz myfile.csv

답변2

먼저 명령을 cd /mnt/sdb1시작 해야 합니다 .tar

tar참고로, 여러 파일을 하나의 타르볼로 모으는 것이 목적이므로 이것을 사용할 필요는 없습니다 . 여기에는 파일이 하나뿐이므로 gzip.

답변3

-Ctar 옵션을 사용하십시오 .

   -C Directory
        Causes the tar command to perform a chdir subroutine to the
        directory specified by the Directory variable.

관련 정보