The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]

форумы  помощь  поиск  регистрация  майллист  вход/выход  слежка  RSS
"Упаковщик/распаковщик"
Вариант для распечатки  
Пред. тема | След. тема 
Форумы Программирование под UNIX (Public)
Изначальное сообщение [ Отслеживать ]

"Упаковщик/распаковщик"  
Сообщение от колючий email(ok) on 07-Апр-08, 20:20 
Всем привет. Если кто может, подскажите плиз как это можно было бы написать?  Написать shell-скрипт упаковщик/распаковщик. На вход скрипту подаётся
несколько файлов (в качестве); после отработки он выдаёт файл. При
запуске этого файла из командной оболочки восстанавливаются исходные
файлы (которые были ранее поданы на вход).
Высказать мнение | Ответить | Правка | Cообщить модератору

 Оглавление

Сообщения по теме [Сортировка по времени | RSS]


1. "Упаковщик/распаковщик"  
Сообщение от angra (ok) on 07-Апр-08, 21:33 
Пары прогуливаем? Задача в общем то не сложная, но громоздкая. Есть несколько вариантов решения, уточни хоть чем пользоваться можно, если конечно подаются бинарные файлы.
Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

2. "Упаковщик/распаковщик"  
Сообщение от колючий email(ok) on 07-Апр-08, 22:01 
Особо много инфы относительно задания я не получил к сожалению. НО : здесь не требуется использовать какой либо алгоритм сжатия(скажем тот же алгоритм Хофмана),  тем же архиватором tar это как то всё надо организовать. Сжатие не требуется, надо токо лишь сделать из нескольких файлов архив(файл). Вот примерно суть задания.
Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

3. "Упаковщик/распаковщик"  
Сообщение от jd2 (ok) on 08-Апр-08, 03:31 
Довольно грубо и без проверки параметров, но в качестве примера, сляпанного за 5 минут, думаю пойдёт. Если я правильно понял суть задачи...

#!/bin/sh
# Usage: pack.sh output file1 [file2 ...]
TMP="/tmp/pack.tmp.$$"
OUTPUT=$1
shift
tar -cf $TMP $*
cat > $OUTPUT <<END
#!/bin/sh
# Self unpacker
tail -n +5 "\$0" | tar x
exit 0
END
cat $TMP >> $OUTPUT
chmod +x $OUTPUT
rm $TMP

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

4. "Упаковщик/распаковщик"  
Сообщение от phpcoder email(??) on 08-Апр-08, 10:13 
>Всем привет. Если кто может, подскажите плиз как это можно было бы
>написать?  Написать shell-скрипт упаковщик/распаковщик. На вход скрипту подаётся
>несколько файлов (в качестве); после отработки он выдаёт файл. При
>запуске этого файла из командной оболочки восстанавливаются исходные
>файлы (которые были ранее поданы на вход).

Всё уже написано до нас (с) :-)
man shar(1)

Ну, если уж очень хочется самому, то можно так:
- засовываешь все файлы в тарболл
- создаешь ещё один шелл-скрипт (распаковщик), который:
  - считывает N байт с конца самого себя
  - сохраняет как архив
  - распаковывает этот архив
- далее в конец этого распаковщика заисываешь созданный tar-архив.


Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

5. "Упаковщик/распаковщик"  
Сообщение от ShyLion (ok) on 17-Апр-08, 15:30 
>Ну, если уж очень хочется самому, то можно так:
>- засовываешь все файлы в тарболл
>- создаешь ещё один шелл-скрипт (распаковщик), который:
>  - считывает N байт с конца самого себя
>  - сохраняет как архив
>  - распаковывает этот архив
>- далее в конец этого распаковщика заисываешь созданный tar-архив.

Для "чистоты" можно tar перегнать в Base64

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

Архив | Удалить

Индекс форумов | Темы | Пред. тема | След. тема
Оцените тред (1=ужас, 5=супер)? [ 1 | 2 | 3 | 4 | 5 ] [Рекомендовать для помещения в FAQ]




Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2025 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру