Я пытаюсь упаковать файл .csv с tar.gz, находясь в корневом каталоге.
Файл 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
Но когда я извлекаю файл, то будет извлечена папка с именем "mnt", которая содержит другую папку с именем "sdb1", которая содержит файл.
Можно ли сжать только файл, а не копировать все каталоги?
Вы должны сначала
cd /mnt/sdb1
, а затем запуститьtar
команду.К вашему сведению, вам не нужно использовать
tar
здесь, поскольку его цель - объединить несколько файлов в тарбол. Поскольку у вас есть только один файл, просто используйтеgzip
.источник
cd
команду раньшеtar
, затем вы можете вернуться или использовать,cd /mnt/sdb1 && tar -czf new.tar.gz myfile.csv && cd /
если вы предпочитаете одну строку cmd.cd /mnt/sdb1/
в корневом каталоге при следующем выполнении команды. Но ваше второе решение выглядит логичным для меня, я пробую.Используйте
-C
опцию tar:источник