Hinnavaatlus
:: Foorum
:: Uudised
:: Ärifoorumid
:: HV F1 ennustusvõistlus
:: Pangalink
:: Telekavad
:: HV toote otsing
|
|
autor |
|
kiiver
HV vaatleja
liitunud: 03.04.2003
|
13.04.2011 18:18:50
Failide pakkimisprogramm zip failide pakkimiseks |
|
|
Otsin programmi mis suudaks pakkida suure arvu (10000+) zip faile efektiivselt. Zip failid sisaldavad paar tekstifaili mis on kõikide erinevate zip failide vahel väga sarnased aga kuna nad on eraldi zip konteineris siis enamus pakkimisprogramme ei suuda ära tunda et sisu on zip/txt, võtaks õige need lahti ja pakiks kokku "solid archive" põhimõttel.
Tean 100%, et mingi proge suutis niimoodi zip-d ära tunda ja data seega ~20x veel väiksemaks saada. Aga see oli ligi 5 aastat tagasi kui sattusin selle teema otsa ja mitte ei suuda enam leida infot. Winrar, 7zip praegused versioonid ei suutnud. Kas võis olla Stuffit või mõni muu, on kellelgi kogemusi ja kas on vabavaraline? Command line liidesega on täiesti piisav.
Ümber nurga lahendus on need zip-d enne eraldi kataloogidesse lahti pakkida ja siis üheks 7zip-ks lasta aga siis lähevad faili atribuudid (kuupäev jms) kaotsi niiet seda varianti ei tahaks kasutada.
EDIT: Stuffit võiski olla see mida mõtlesin, saab sätetest määrata recompressionit aga kahjuks pakutakse ainult trial versiooni.
Googeldades on leida veel mõned zip recompress tarkvarad aga need pakivad jällegi konkreetseid zip faile ümber näiteks 7z fomraati kaotades algsed faili atribuudid. Vaja oleks sellist millele annan ette terve kataloogi zip failidega ja kui hiljem lahti pakkida siis saan täpselt sama kataloogistruktuuriga ja samade atribuutidega zip failid.
|
|
Kommentaarid: 3 loe/lisa |
Kasutajad arvavad: |
   |
:: |
0 :: |
0 :: |
3 |
|
tagasi üles |
|
 |
Mucrop3
Lõuapoolik


liitunud: 28.03.2004
|
13.04.2011 22:35:21
|
|
|
Kõige parem on need zipid lahti pakkida korraga ja siis 7zip iga LZMA2 või PPMd meetodiga ultrtihendus või palju mälu jagub masinal.
_________________ My stroke machine roars down the lustful highway.
Keefir RUULIB. |
|
tagasi üles |
|
 |
kiiver
HV vaatleja
liitunud: 03.04.2003
|
13.04.2011 23:06:06
|
|
|
See on variant ja kirjutasin juba sellest esimeses postis!
Aga võimalusel tahaks alles jätta zip kujul failid koos faili atribuutidega. Kui vastavat Stuffit programmi analoogi ei leia siis läheb jah käiku tavaline extract/compress.
|
|
Kommentaarid: 3 loe/lisa |
Kasutajad arvavad: |
   |
:: |
0 :: |
0 :: |
3 |
|
tagasi üles |
|
 |
Dogbert
HV Guru

liitunud: 03.05.2004

|
14.04.2011 12:08:08
|
|
|
Lahti pakkimisel jääb kuupäev ikka faili loomise oma - proovi kui ei usu. Nii et korra lahti- ja siis kokkupakkimine seda kuupäeva ei mõjuta, kui faili vahepeal ei näpi.
_________________ Tee inimesele lõke ja tal on soe üheks päevaks, pista ta põlema ja tal on soe elu lõpuni. (Terry Pratchett)
e.k spikker: muhk on kumer, lohk on nõgus. |
|
Kommentaarid: 33 loe/lisa |
Kasutajad arvavad: |
   |
:: |
0 :: |
0 :: |
32 |
|
tagasi üles |
|
 |
kiiver
HV vaatleja
liitunud: 03.04.2003
|
14.04.2011 16:57:33
|
|
|
Failide kuupäevad jäävad küll samad (kogu info mida pakitakse jääb loomulikult alati samaks) aga zip failide kataloogideks lahti pakkimisel on kataloogide kuupeävad tänased, mis on ka loogiline kuna sisuliselt tehakse iga zip vastu uus kataloog.
Mõtlen siis sellist olukorda:
arhiiv1.zip (kuupäev x)
|_
tekstifail1.txt
tekstifail2.txt
tekstifail3.txt
arhiiv2.zip (kuupäev y)
|_
tekstifail1.txt
tekstifail2.txt
tekstifail3.txt
ja lahti pakituna on seis selline:
folder "arhiiv1" (kuupäev täna)
|_
tekstifail1.txt
tekstifail2.txt
tekstifail3.txt
folder "arhiiv2" (kuupäev täna)
|_
tekstifail1.txt
tekstifail2.txt
tekstifail3.txt
edit: Kokkuvõttes eraldi zip lahti pakkimisel ja hiljem kõikide kataloogide üheks kokku pakkimisel läheb kaduma algse zip faili atribuudid (kuupäev)
|
|
Kommentaarid: 3 loe/lisa |
Kasutajad arvavad: |
   |
:: |
0 :: |
0 :: |
3 |
|
tagasi üles |
|
 |
bladerunner
HV Guru
liitunud: 17.01.2002
|
14.04.2011 17:07:51
|
|
|
Kirjuta siis pisike progejupp mis .zip loomise põhjal kataloogid õigete kuupäevaga tekitab?
_________________ Experience is what you get when you don't get what you want. |
|
Kommentaarid: 168 loe/lisa |
Kasutajad arvavad: |
   |
:: |
0 :: |
0 :: |
157 |
|
tagasi üles |
|
 |
kiiver
HV vaatleja
liitunud: 03.04.2003
|
14.04.2011 17:13:32
|
|
|
bladerunner kirjutas: |
Kirjuta siis pisike progejupp mis .zip loomise põhjal kataloogid õigete kuupäevaga tekitab? |
See mõte käis ka läbi, et peaks tegema command line scripti lahti pakkimiseks, pole aga väga kodus selles teemas. Kui aega tekib sis ehk tsekkan..
|
|
Kommentaarid: 3 loe/lisa |
Kasutajad arvavad: |
   |
:: |
0 :: |
0 :: |
3 |
|
tagasi üles |
|
 |
Mucrop3
Lõuapoolik


liitunud: 28.03.2004
|
14.04.2011 18:09:59
|
|
|
Linuxis oli file manager mille nime ei mäleta,
aga sellega sai batch processiga faile ümber nimetada ja kataloogidesse grupeerida.
Sai failinimesse faili kuupäeva kirjutada ja kindlad sõnad mõne teisega asendada ja lühendada failinimed x märkide arvuni ja sada muud asja.
Näiteks lisa olemasoleva faili nime lõppu või peale x'indat märki soovitav sõna/ info.
Ehk on windowsis ka midagi sarnast.
_________________ My stroke machine roars down the lustful highway.
Keefir RUULIB. |
|
tagasi üles |
|
 |
kiiver
HV vaatleja
liitunud: 03.04.2003
|
14.04.2011 18:43:23
|
|
|
Tean ainult faili atribuutide muutmise võimalusi, näiteks "touch" mille windowsi port ka toimib ("touch -c -r file.zip file.aaa" muudab file.aaa timestamp väärtused võrdseks file.zip omadega) See aga ei tööta kataloogidega. Tasuta kataloogi modimise proget ei õnnestunud leida.
Üks hullemat sorti häkk oleks teha batch fail, kus: for loop -> leida zip timestamp -> muuta süsteemi date ja time -> tekitada kataloog -> muuta süsteemi date ja time tagasi. Peaks olema olemasolevate command line vahenditega teostatav.
Aga süsteemi kella muutmine on väga halb mõte ja pärast scripti on aeg näiteks mõned sekundid vale.
|
|
Kommentaarid: 3 loe/lisa |
Kasutajad arvavad: |
   |
:: |
0 :: |
0 :: |
3 |
|
tagasi üles |
|
 |
bladerunner
HV Guru
liitunud: 17.01.2002
|
|
Kommentaarid: 168 loe/lisa |
Kasutajad arvavad: |
   |
:: |
0 :: |
0 :: |
157 |
|
tagasi üles |
|
 |
HacaX
HV Guru

liitunud: 22.01.2004
|
15.04.2011 01:59:31
|
|
|
Kas sellise ebakindla näitaja nagu loomis/muutmisaeg asemel poleks mõistlikum aeg otse nimesse kanda (a'la arhiiv_DAATUM)? Aegadest võid ilma jääda ka sellega et ebasobivat kopeerimisproge (võtmeid) kasutad. Ma ei loe näiteks selle StuffIti juures küll välja et ta uuestipakkimisel ilmtingimata esialgse kellaaja arhiividele paneb (neil lausa eraldi märge ZIPi juures - nn "pikslitasandil" taastus, mitte "bititasandil").
Teed käsurealt midagi analoogset:
for %a in (*.zip) do unzip %a "%~na - %~ta\" |
mis pakib "X.ZIP" kujul failid "X - kuupäev kellaaeg" nimega kaustadesse lahti. Seejärel lased meelepärase pakkijaga üheks arhiiviks. Peaksid ka ruumi mõnevõrra säästma (nõrgema pakkija loodud arhiivi tugevama veelkordne pakkimine ei anna sama head tulemust kui algse materjali otse tugevama pakkijaga kompresseerimine).
_________________ IMO & GPLed |
|
Kommentaarid: 24 loe/lisa |
Kasutajad arvavad: |
   |
:: |
1 :: |
0 :: |
22 |
|
tagasi üles |
|
 |
kaitzo
HV vaatleja
liitunud: 24.11.2006
|
15.04.2011 10:50:05
|
|
|
Soovitan uurida: http://schnaader.info/precomp.php
Lisad kõik zip failid ühte nt 7z konteinerisse pakkimata kujul. Lased precomp'ga üle.
Kontrollida ka vastupidist protsessi et ikka taastab sama asja tagasi.
Lased tugeva pakkijaga üle tekkinud faili lisades sinna ka igaks juhuks precomp programmi koos lisafailidega kaasa. Teed ka mingi bat faili et lahtipakkimisel siis lükkab käima ja väljastab sulle selle mida tahad.
|
|
Kommentaarid: 5 loe/lisa |
Kasutajad arvavad: |
   |
:: |
0 :: |
0 :: |
4 |
|
tagasi üles |
|
 |
kiiver
HV vaatleja
liitunud: 03.04.2003
|
15.04.2011 12:43:32
|
|
|
Sain oma probeemile juba sellise lehenduse, et tegin väikese proge mis pakib kõik zip-d lahti (ka rekursiivselt) eraldi kataloogidesse ja määrab kataloogide created time, modified time, access time vastavaks zip-i omadega. Hiljem panen kokku üheks solid 7z-ks.
Vaatasin ka viimaseid soovitusi
Nirisofi NirCmd muidu hea vahend aga suudab ainult faili kuupäevasid muuta, kataloogidega jääb hätta.
HacaX-i variant paistab sobilik, samas ei saanud "%%~ta" kuupäeva katalooginimeks salvestada kuna kellaaja koolon pole lubatav märk, kas leidub käsku selle asendamiseks või formaatimiseks?
Ja muide HacaX, nagu teema alguses mainisin, oligi kogu asja point, et failid enne lahti pakkida ja hiljem kokku üheks solid arhiiviks, saavutades umbes 20x ruumi kokkuhoiu.
kaitzo pakutud Precomp toimib ja tundub hea lollikindel variant, umbes sellist vahendit alguses otsisingi. Täpsustuseks, et 7z formaati ei toeta aga zip-ga saab hakkama. Ehk siis pakin terve kataloogitäie zip faile alguses üheks zip-ks, pärast [lprepaq 4 "all.zip" outfile.abc]
|
|
Kommentaarid: 3 loe/lisa |
Kasutajad arvavad: |
   |
:: |
0 :: |
0 :: |
3 |
|
tagasi üles |
|
 |
|