|
Страница 1 из 1 [ Сообщений: 13 ] |
Автор |
Сообщение |
amphibian
соучастник
|
|
Задача в том, чтобы ужать несколько файлов на сервере в один архив. В PHP есть функции для сжатия строк. В принципе на этой основе можно написать свой архиватор, но может уже есть готовые решения?
_________________ Любовь открывает кредит, который неизбежно ведет к разорению...
|
|
 |
|
 |
@TSV
постоянный участник
|
|
amphibian, в PHP уже есть встроенный архиватор, да не один.  Лучший из них - это Bzip, смотри в документации Bzip2 Compression Functions и Zlib Compression Functions.
|
|
 |
|
 |
amphibian
соучастник
|
|
@TSV, ты говоришь про то, что я уже написал выше - функции сжатия строк. Но это не решает проблемы запаковки нескольких фалов в один архив. Кроме сжатой стороки конкретного файла, туда надо писать еще кучу всякой информации о самом сжимаемом файле, путь до него от корня и т.п. Особой проблемы написать нет, но я сомневаюсь что этого еще не написано.
_________________ Любовь открывает кредит, который неизбежно ведет к разорению...
Последний раз редактировалось amphibian 19 Февраль 2004, 14:44:10, всего редактировалось 1 раз.
|
|
 |
|
 |
@TSV
постоянный участник
|
|
amphibian, так сделай cgi на шелле и пусти из него обыкновенный ZIP. Проверять аргументы придется тщательно, но тебя никто и не заставляет показывать этот скрипт всему честнОму народу. 
|
|
 |
|
 |
amphibian
соучастник
|
|
@TSV, ты имеешь ввиду Shell? Но у хостера его нет. Нужно более универсальное решение.
_________________ Любовь открывает кредит, который неизбежно ведет к разорению...
Последний раз редактировалось amphibian 19 Февраль 2004, 15:25:38, всего редактировалось 1 раз.
|
|
 |
|
 |
amphibian
соучастник
|
|
Crazy, а, т.е. в юниксах уже есть стандартный архиватор и от него можно добиться нужных действий системной командой? Ладно, сейчас посмотрю.
_________________ Любовь открывает кредит, который неизбежно ведет к разорению...
|
|
 |
|
 |
Crazy
Модератор
|
|
Стандартный архиватор в юниксах есть, но он тебе, возможно, и не нужен. Стандартный компрессор в юниксах тоже есть -- тебе нужен именно он.
Твоя проблема в том, что ты очень неточно понимаешь смысл терминов, которые говоришь сам и слышишь от других. Вовсе не потому, что ты глупый. Просто юниксовая терминология имеет свою специфику, которую невозможно понять интуитивно. Дело усугубляется тем, что часть терминов в мире DOS/Windows имеет иной смысл. Типичный пример -- "архиватор".
_________________ We've got the big memory and the small memory. The small memory's to remember the small things and the big memory's to forget the big ones.
|
|
 |
|
 |
@TSV
постоянный участник
|
|
Например
Код: gzip -c file1.ext > foo.gz gzip -c file2.ext >> foo.gz … gzip -c fileN.ext >> foo.gz
запакует нужные тебе файлы и сложит их в один foo.gz Файлы .gz можно склеивать, то есть просто подписывать один архив в конец другого. Это нормально.
|
|
 |
|
 |
amphibian
соучастник
|
|
@TSV, Crazy, спасибо. Странно что под виндами это тоже частично работает. Т.е. файл создается, но пустой. Надеюсь что у провайдера не винды стоят.
_________________ Любовь открывает кредит, который неизбежно ведет к разорению...
|
|
 |
|
 |
@TSV
постоянный участник
|
|
amphibian, почему частично? gzip.exe из Cygwin у меня эту операцию выполнил на ура, причем я его из вредности и из консоли запустил, и из обычной командной строки виндов (хотя это в данном случае одно и то же).
Лучше даже так:
Код: cat file1.ext file2.ext … fileN.ext | gzip > foo.gz
Но самым правильным было бы по-честному man gzip посмотреть. 
|
|
 |
|
 |
amphibian
соучастник
|
|
@TSV, так то из Cygwin. Из под него работает (сейчас скачал и поставил). Но Виндам и Апачу ни тепло ни холодно от этого.
_________________ Любовь открывает кредит, который неизбежно ведет к разорению...
|
|
 |
|
 |
@TSV
постоянный участник
|
|
amphibian, почему - ни тепло ни холодно?
- Берем каталог, любой, где несколько файлов, но немного
- cat * | gzip > foo.gz из виндовой командной строки
- Все честно работает
- Проверяем, как работают CGI с шелловскими скриптами:
Код: #!c:/cygwin/bin/sh.exe
echo "Content-type: text/html" echo "" echo "Hello, world!" httpd.conf: Код: ScriptAlias /cgi-bin/ "C:/cygwin/home/TSV/cgi-bin/"
<Directory "C:/cygwin/home/TSV/cgi-bin/"> AllowOverride None Options ExecCGI FollowSymLinks Order allow,deny Allow from all </Directory>
Усё пашет идеально.

|
|
 |
|
 |
|
Страница 1 из 1 [ Сообщений: 13 ] |
Уровень доступа: Вы не можете начинать темы. Вы не можете отвечать на сообщения. Вы не можете редактировать свои сообщения. Вы не можете удалять свои сообщения. Вы не можете добавлять вложения.
|
|