Intereting Posts
Как определить, были ли отброшены или сохранены изменения в нано? Вход RapidFire с xdotool и xbindkeys Список точек монтирования внешних устройств хранения, таких как USB-брелки и внешние диски SATA, из кли mint 17.2 не будет подключаться к самому сильному ssid, а вместо этого к определенному Винные места для установки cdrom на Linux Mint 10 (Ubuntu 10.10) – проблемы после установки / переключения дисков Каковы ограничения объема для установки extglob. и другие варианты? замените `while` более подходящей функцией, поэтому цикл будет ждать завершения каждого процесса Какой файл определяет записи «# Регистры:» в /home/ubuntu/.viminfo после перезапуска apache2 Приостановить на уровне входа в систему, а не на рабочей станции – возможная проблема в многопользовательской системе (Ubuntu, Mint) Липкий бит и пользователи с разрешением sudo XFCE – анимация Autohide Команда ведет себя по-разному при сохранении в файле * .sh Какое распределение вы предлагаете для ежедневного использования? Почему только один сетевой адаптер получает IP-адрес DHCP? В чем цель использования разных crontab для каждого пользователя?

tar сжимает папку, но создает вложенную структуру

У меня есть следующие папки на Linux-машине

./myFolder ./tmp ./packages ./zips compress.sh 

Я запускаю tar -czf ./zips/someFile.tar.gz ./tmp/someFolder из compress.sh . Папка создана, но возникающая вложенность происходит внутри zip-файла:

, -> tmp -> someFolder

Как я могу закрепить этот файл так, чтобы при его открытии это просто someFolder , а не someFolder внутри tmp внутри . ?

Вы можете попробовать следующее:

 tar -czf ./zips/someFile.tar.gz -C ./tmp/ someFolder 

Вы можете использовать параметр -C или --directory

 tar -czf ./zips/someFile.tar.gz -C ./tmp someFolder 

Из man tar

 -C, --directory DIR change to directory DIR 

пример

 % ls -og total 4 -rw-rw-r-- 1 0 Mai 21 18:39 bar drwxrwxr-x 2 4096 Mai 21 18:39 foo tar -cvf ../sample.tar -C /home/user/tmp . tar -tvf ../sample.tar drwxrwxr-x user/user 0 2015-05-21 18:39 ./ -rw-rw-r-- user/user 0 2015-05-21 18:39 ./bar drwxrwxr-x user/user 0 2015-05-21 18:39 ./foo/ 

Команда tar не застегивается. Даже с флагом -z . Однако он собирает ряд файлов / папок и, возможно, сжимает результат. Чтобы контрастировать, zip сжимает каждый файл и добавляет его в архив. zip и tar используют различные алгоритмы сжатия.

Страница man для tar показывает флаг -C ( --directory ) для изменения каталога, поэтому вы можете сделать это

 tar czfC zips/someFile.tar.gz tmp someFolder 

Вы также можете использовать опцию --transform для удаления ведущего tmp/

 tar czf zips/someFile.tar --transform 's#^tmp/##' tmp/someFolder