Самый простой способ сделать это - сначала записать компакт-диск в каталог:
cd /path/to/containing/folder && tar -zcvf tarfile.tar.gz foldername_tocompress
Таким образом, каталог (содержащей) папки становится корневым каталогом вашего сжатого файла.
Немного более продвинутым является использование опции -C:
tar -zcvf tarfile.tar.gz -C /path/to/foldername_tocompress .
Это создает tar.gz файл в текущем (рабочем) каталоге, содержащий все файлы/папки внутри foldername_tocompress (обратите внимание на точку, говоря, что все файлы / папки должны быть включены).
синтаксис tar таков: tar zcvf file.tar.gz /path/dir/to/compress возможно, вам следует изменить свою команду в tar zcvf $destinationpath $srcpath, но мне неясно, что вам нужно. Не могли бы вы уточнить свой вопрос на примере того, чего вы ожидаете от команды tar?
спасибо за комментарий, моя проблема заключается в следующем: после комментария, которым вы поделились здесь “tar zcvf file.tar.gz /path /dir /to/compres” это должно работать нормально, если мы находимся в одном каталоге “file” в моем случае мы работаем из другого каталога, например: /home /testuser1 /файл : файл - это папка, которую я хочу сжать, и я исключаю команду из root, а не из home, поэтому нам может потребоваться указать полный путь к папке, при извлечении я получаю все подкаталоги из /home /testuser1/file вместо папки file