Форум русскоязычного сообщества Ubuntu


Увидели сообщение с непонятной ссылкой, спам, непристойность или оскорбление?
Воспользуйтесь ссылкой «Сообщить модератору» рядом с сообщением!

Автор Тема: [РЕШЕНО] Искусство tar (воообщето тема была про bash) ))  (Прочитано 2838 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн Slavians

  • Автор темы
  • Участник
  • *
  • Сообщений: 142
  • Lisa 12 штоле 11.10
    • Просмотр профиля
привет всем.
подскажите  умеет ли tar такое (7zip вин32 консольный, помню умел):

задача
есть структура,
допустим /.wine/
и в ней  n-директорий   /.wine/1/  /.wine/2/ /.wine/3/   /.wine/N/

как создать n-штук  архивов  для  каждой  папки?  1.tar.gzip  2.tar.gzip n.tar.gzip



« Последнее редактирование: 18 Января 2011, 18:32:21 от Slavians »
---
ага

Оффлайн БТР

  • Заслуженный пользователь
  • СуперМодератор
  • Старожил
  • *
  • Сообщений: 6123
    • Просмотр профиля
Re: Искусство tar
« Ответ #1 : 18 Января 2011, 12:04:31 »
for i in `ls ~/.wine`; do tar -c -f $i ~/backup; done

Оффлайн Slavians

  • Автор темы
  • Участник
  • *
  • Сообщений: 142
  • Lisa 12 штоле 11.10
    • Просмотр профиля
Re: Искусство tar
« Ответ #2 : 18 Января 2011, 14:43:51 »
for i in `ls ~/.wine`; do tar -c -f $i ~/backup; done

неа  не получается так .... вместо упаковки реальных файлов в архивы  попадает всякий мусор с консоли   :-\
---
ага

Оффлайн alexander.pronin

  • Старожил
  • *
  • Сообщений: 2539
    • Просмотр профиля
Re: Искусство tar
« Ответ #3 : 18 Января 2011, 14:59:12 »
ТС, Вы добейтесь результата с одной директорией и приведите здесь команду. Дальше уже садитесь в БТР.

Оффлайн Slavians

  • Автор темы
  • Участник
  • *
  • Сообщений: 142
  • Lisa 12 штоле 11.10
    • Просмотр профиля
Re: Искусство tar
« Ответ #4 : 18 Января 2011, 15:19:06 »
результаты экспериментов

ing@ING:~/Backup/target$ for i in `ls ~/Backup/source`; do tar -c -f $i ~/Backup/target; done
tar: Удаляется начальный `/' из имен объектов
tar: /home/ing/Backup/target/1: файл является архивом; не сброшен
tar: Удаляется начальный `/' из имен объектов
tar: /home/ing/Backup/target/2: файл является архивом; не сброшен
tar: Удаляется начальный `/' из имен объектов
tar: /home/ing/Backup/target/n: файл является архивом; не сброшен
tar: Удаляется начальный `/' из имен объектов
tar: /home/ing/Backup/target/tar_pos2.sh: файл является архивом; не сброшен
---
ага

Оффлайн БТР

  • Заслуженный пользователь
  • СуперМодератор
  • Старожил
  • *
  • Сообщений: 6123
    • Просмотр профиля
Re: Искусство tar
« Ответ #5 : 18 Января 2011, 15:25:34 »
for i in `ls ~/Backup/source`; do tar -c -f ~/Backup/target/$i.tar  ~/Backup/source/$i; done
« Последнее редактирование: 18 Января 2011, 15:27:54 от БТР »

Оффлайн Slavians

  • Автор темы
  • Участник
  • *
  • Сообщений: 142
  • Lisa 12 штоле 11.10
    • Просмотр профиля
Re: Искусство tar
« Ответ #6 : 18 Января 2011, 15:43:55 »
да, спасибо вам!
остановился на варианте
for i in `ls ~/Backup/source`; do tar cfz  ~/Backup/target/$i.tar  ~/Backup/source/$i; done

правда внутри архивчиков   папки  структурированы с полными путями, немного адово получается там /home/и так далее   матрёшка   8) 
но это уже тюнинг )  продолжаю курить смолу дальше )
---
ага

Оффлайн sash_123

  • Любитель
  • *
  • Сообщений: 64
    • Просмотр профиля
Re: Искусство tar
« Ответ #7 : 18 Января 2011, 18:03:05 »
а так
cd ~/Backup/source
for i in `ls ~/Backup/source`; do tar czf  ~/Backup/target/$i.tar $i; done

Оффлайн Slavians

  • Автор темы
  • Участник
  • *
  • Сообщений: 142
  • Lisa 12 штоле 11.10
    • Просмотр профиля
Re: Искусство tar
« Ответ #8 : 18 Января 2011, 18:23:39 »
а так
cd ~/Backup/source
for i in `ls ~/Backup/source`; do tar czf  ~/Backup/target/$i.tar $i; done

вполне рабочий  вариант.
но  не берёт те папки, в названии которых есть пробелы.
---
ага

Оффлайн wl

  • Старожил
  • *
  • Сообщений: 1393
    • Просмотр профиля
Re: Искусство tar
« Ответ #9 : 18 Января 2011, 18:53:46 »
вполне рабочий  вариант.
но  не берёт те папки, в названии которых есть пробелы.

cd ~/Backup/source
for i in *; do tar czf "$i".tar "$i"; done
На свете феньки есть такие, брат Горацио, которых лохи просто не секут. (Шекспир, "Гамлет", вольный перевод)

Оффлайн Slavians

  • Автор темы
  • Участник
  • *
  • Сообщений: 142
  • Lisa 12 штоле 11.10
    • Просмотр профиля
отличный вариант.
он самый отточенный.

добавил  ещё  указание на цель  и сжатие   zip  c компрессией 9
cd ~/Backup/source
for i in *; do 7z a -mx=9 -tzip ~/Backup/target/"$i".zip "$i"; done
---
ага

Оффлайн smaharbA

  • Участник
  • *
  • Сообщений: 220
    • Просмотр профиля
Да уж (с)
find ~/Backup/source -maxdepth 1 -mindepth 1 -type d -exec 7z a -mx=9 -tzip ~/Backup/target/"{}".zip "{}" \;
Я конечно далек от мысли...(с)

Оффлайн alexander.pronin

  • Старожил
  • *
  • Сообщений: 2539
    • Просмотр профиля
Re: [РЕШЕНО] Искусство tar (воообщето тема была пр
« Ответ #12 : 19 Января 2011, 11:18:14 »
Да уж (с)
find ~/Backup/source -maxdepth 1 -mindepth 1 -type d -exec 7z a -mx=9 -tzip ~/Backup/target/"{}".zip "{}" \;
В этом варианте надо из полного пути убирать часть пути (так мне кажется навскидку, хотя могу ошибаться).

Оффлайн smaharbA

  • Участник
  • *
  • Сообщений: 220
    • Просмотр профиля
Re: [РЕШЕНО] Искусство tar (воообщето тема была пр
« Ответ #13 : 19 Января 2011, 11:24:26 »
find ~/Backup/source -maxdepth 1 -mindepth 1 -type d -execdir 7z a -mx=9 -tzip ~/Backup/target/"{}".zip "{}" \;
Я конечно далек от мысли...(с)

Оффлайн alexander.pronin

  • Старожил
  • *
  • Сообщений: 2539
    • Просмотр профиля
find ~/Backup/source -maxdepth 1 -mindepth 1 -type d -execdir 7z a -mx=9 -tzip ~/Backup/target/"{}".zip "{}" \;
А здесь похоже надо убирать ./ в
~/Backup/target/"{}".zip "{}"

 

Страница сгенерирована за 0.097 секунд. Запросов: 23.