
7-zip - prikazovy riadok - parameter -x
poytrebujem aby boli vylucene niektore subory - teda lepsie povedane vsetky z urciteho adresara. Manual pise
-x[<recurse_type>]<file_ref>
<recurse_type> ::= r[- | 0]
<file_ref> ::= @{listfile} | !{wildcard}
a k listfile ma toto
For example, if the file "listfile.txt" contains the following:
My programs\*.cpp
Src\*.cpp
Takze listfile.txt
data\nezalohovane\
alebo
data\nezalohovane\*
a prikaz
7za a ..\data\%DT% c:\data -x@listfilef.txt > ..\data\%dt%.log
by mal ulozit vsetko z data okrem nezalohovane. Pripadne s parametrom -r. Ale mam tam vsetko. Prehliadam niekde nieco?
Tak jsem zkusil tohle:
exclude.txt obsahuje:
A dělá to přesně to, co bych od toho očekával.
A už asi vidím v čem je problém, zkus tam dát jenom:
este taka vec ma napadla . . . 7za verzia 4.65
Stejná verze a dělá co má. Podle mě je problém v cestách k souborům, dej sem nějaký výpis, ze kterého bude jasné, kde ty soubory přesně jsou.
adresar c:\zalohovanie, tam je 7za, aj lf.txt aj zaloha.bat
zalohujem adresar c:\data
zaloha.bat -> 7za a pokus c:\data\* -x@lf.txt, spustane v adresari c:\zalohovanie
Mně spíš šlo o obsah adresáře c:\data.
C:\DATA>dir
Svazek v jednotce C je System_Data.
Sériové číslo svazku je 50DC-B0EE.
Výpis adresáře C:\DATA
22. 04. 2009 14:01 <DIR> .
22. 04. 2009 14:01 <DIR> ..
22. 04. 2009 13:06 340 22042009.log
11. 03. 2009 11:36 296 960 HDD.doc 22. 04. 2009 11:41 300 Kopie - 22042009.log 22. 04. 2009 11:44 12 lf.txt 22. 04. 2009 10:52 <DIR> nezalohovane 22. 04. 2009 10:52 271 065 test.7z 5 souborů, 568 677 bajtů Adresářů: 3, Volných bajtů: 25 791 746 048 napriklad
Tak jsem si vytvořil adresář data se stejnými názvy souborů jaký máš, lf.txt i zaloha.bat jsem taky zkopíroval odtud a ve výsledném souboru *.log nemám.
7-Zip (A) 4.65 Copyright (c) 1999-2009 Igor Pavlov 2009-02-03
Scanning
Creating archive pokus.7z
Compressing test.7z
Compressing lf.txt
Compressing HDD.doc
Compressing nezalohovane\HDD.doc
Compressing nezalohovane\test\HDD.doc
Compressing 22042009.log
Compressing Kopie - 22042009.log
Everything is Ok
Prosimta daj sem presne
a) presny obsah .bat (alebo prikaz) ktory spustas, a ak davas -x@subor tak aj vypis toho suboru, a presne sem napis ako to spustas (otvoris cmd alebo co) a z akeho adresara to spustas - to je kriticka vec.
b) vypis dir adresara v ktorom to spustas
c) pozri sa do archivu ze ake subory su v nom (ci su v archive aj tie subory ktore nechces), a nie len to co vypisuje 7zip pri kompresii.
Daj to sem vsetko naraz lebo tu je chaos a nikto nevie co vlasne kedy ako tam spustas a z akeho adresara to spustas.
P.S. ak to je nejaky unix tak pozor na velke/male pismena suborov, nie je to jedno.
takze
adresar zalohovania c:\zalohovanie, tam je 7za, aj lf.txt aj zaloha.bat
zalohujem adresar c:\data
spustam zaloha.bat v adresari c:\zalohovanie -> "7za a pokus c:\data\* -x@lf.txt"
Výpis adresáře C:\DATA
22. 04. 2009 14:01 <DIR> .
22. 04. 2009 14:01 <DIR> ..
22. 04. 2009 13:06 340 22042009.log
11. 03. 2009 11:36 296 960 HDD.doc
22. 04. 2009 11:41 300 Kopie - 22042009.log
22. 04. 2009 11:44 12 lf.txt
22. 04. 2009 10:52 <DIR> nezalohovane
22. 04. 2009 10:52 271 065 test.7z
5 souborů, 568 677 bajtů
Adresářů: 3, Volných bajtů: 25 791 746 048
napriklad
log subor zalohy
7-Zip (A) 4.65 Copyright (c) 1999-2009 Igor Pavlov 2009-02-03
Scanning
Creating archive pokus.7z
Compressing test.7z
Compressing lf.txt
Compressing HDD.doc
Compressing nezalohovane\HDD.doc
Compressing nezalohovane\test\HDD.doc
Compressing 22042009.log
Compressing Kopie - 22042009.log
Everything is Ok
a v spakovanom subore je vsetko tak ako v logu
koniec riadka mam
je to winXP
lf.txt musis mat predsa tam, odkial spustas ten 7zip (adresar zalohovanie) a nie v C:\data. Alebo mu skusit dat plnu cestu -x@C:\Data\lf.txt
Resp musis ho mat v aktualnom adresari (keby som bol v konzole na C:\ a spustil by som (hypoteticky priklad) "zalohovanie\7zip.exe -x@lf.txt" tak musi byt lf.txt v C:\ pretoze to bol aktualny adresar - na nom som bol v konzole ked som spustal "zalohovanie\7zip.exe"). Dufam ze to je jasne :)
.. pokial mas nejaky lf.txt aj v adreasari c:\zalohovanie, tak ho sem vypis, ale nie ten lf.txt ktory ti vidim v adresari C:\Data.
A uisti sa ze v lf.txt je novy riadok na konci suboru (preistotu).
P.S. a skus dat do lf.txt aj plnu cestu
C:\data\nezalohovane\*
alebo
C:\data\*.log
apod
Neviem ako to ten program porovnava ten nazov suboru ci aj s cestou alebo co. Je trochu nestastne ze ten 7zip spustas z podadresara a davas mu plnu cestu na subory ktore ma pakovat.
v adresari c:\data je lf.txt uz ;len z dovodu ze co ked to bere odtial co zalouje, je totozny s c:\zalohovanie.
riadok navyse tam je. Plnu cestu som skusal, aj relativne s adresarom, aj bez, vsetky kombinacie variacie mutacie a aj permutacie
No nieco asi blbo robis, lebo inym to ide :)
Skus 7zip spustit z C:\ a nikde nepouzivat plne cesty. Alebo proste zacni od najjednoduchsieho - mat kompletny 7zip v nejakom adresari, a spakovat len aktualny adresar, okrem nejakeho suboru. apod.
Ak funguje tak potom postupne zozlozitovat (podadresar, rekurzivne, apod).
ved urcite je tam nejaka blbovina, spustam to z adresara c:\zalohovanie, zalohujem c:\data, lf.txt je v c:\zalohovanie . . . nech robim co robim, stale mi vyzalohuje cely adresar data. Idem na virtual PC, tam supnem len 7zip, ziadne cesty, nic . . . a uvidim. Dik vsetkym, aspon viem ze ostatnym to ide, to len ja som blbec
ja som to neskusal ale funguje to minimalne Wikanovi vyssie, a vyrobcovi programu
Podla mna su problem tie cesty, alebo velke/male pismena suborov alebo adresarov (skus to striktne dodrziavat, velkost pismen pozerat v prikaze DIR, nie v exploreri (ten nezobrazuje spravne ak su vsetky velke)
no preboha vo win XP snad jedno ci velke ci male pismena . . . az tak daleko som nezasiel . . .
Ale tomu programu to nemusi byt jedno. Ked porovnava nazvy suborov/adresarov ktore ma vynechat. *.log neni to iste co *.LOG