Sida 1 av 1
unrar
Postat: 10 aug 2008, 11:07
av m_tullgren
Hej,
Finns där någon där ute som kan ge bra tips om unrar i linux?
Det är så att jag vill packa upp en massa filer som ligger i olika mappar i en mapp...
Detta går ju givetvis att göra med unrar i linux men är en smula ineffektivt då man antingen måste vara vid datorn och packa upp allt en och en eller packa upp alla filer på en gång.
Finns där något kommando i terminalen så man kan packa upp allt i en mapp även sånt som ligger i mappar under?
Eller något bra program tips....
Tacksam för hjälp!
Re: unrar
Postat: 10 aug 2008, 11:36
av webaake
Testa;
man unrar
så listas alla kommandon för unrar.
Kanske funkar unrar -r e /dina/mappar ?
e = extract
-r = rekursivt = "gå ner i alla mappar"
Re: unrar
Postat: 11 aug 2008, 09:57
av m_tullgren
Hej,
Tack för svar men får inte det att fungera
skriver; unrar -r -e /home/jag/temp/ /home/jag/klara
i temp katalogen ligger flera mappar med rar arkiv i sig
Re: unrar
Postat: 11 aug 2008, 10:55
av Konservburk
m_tullgren skrev:får inte det att fungera
skriver; unrar -r -e /home/jag/temp/ /home/jag/klara
i temp katalogen ligger flera mappar med rar arkiv i sig
yes no är för att den inte ska stanna och fråga om du vill ersätta dubletter.
Re: unrar
Postat: 11 aug 2008, 11:26
av dmz
rar e r *.r*
fungerar annars bra.
Re: unrar
Postat: 11 aug 2008, 11:45
av Konservburk
dmz skrev:rar e r *.r*
fungerar annars bra.
Nej och åter nej
Det där fungerar som bäst dåligt. Glöm aldrig att skydda * mot det onda skalet.
Re: unrar
Postat: 11 aug 2008, 13:08
av webaake
Obs: det är bara e inte -e !!
Alltså unrar e -r osv........
Lätt att missa.
Så:
unrar e -r /home/klara/*
borde funka.
Re: unrar
Postat: 11 aug 2008, 13:19
av Konservburk
webaake skrev:unrar e -r /home/klara/*
borde funka.
Nej, nej och ännu mera nej!
Jag vill inte se fler som struntar i att skydda * mot skalet.

Re: unrar
Postat: 11 aug 2008, 16:53
av dmz
Konservburk skrev:webaake skrev:unrar e -r /home/klara/*
borde funka.
Nej, nej och ännu mera nej!
Jag vill inte se fler som struntar i att skydda * mot skalet.

huh?
Re: unrar
Postat: 11 aug 2008, 17:07
av m_tullgren
Tack för alla svar!
Fick det att fungera; yes no | unrar e -r /home/jag/Temp/\*.r* home/jag/klara/
Dock så skapade den en katalog i min home katalog med /home/klara/ men det är ju fin justeringar hehe.
Förstår inte riktigt vad Konservburk menar med att man skall skydda sig mot skalet?
Tack för hjälpen!
Re: unrar
Postat: 11 aug 2008, 17:24
av Konservburk
dmz skrev:huh?
När ni använder * på det där sättet så måste ni se till att skalet inte byter ut den mot något som råkar matcha fast ni inte tänkt er det. Säg t.ex. att det skulle finnas en fil som heter
hur.man.ritar.txt i katalogen där du kör
rar e -r *.r* ... då kommer du egentligen att köra
rar e -r hur.man.ritar.txt (vilket jag antar att du inte vill). Att det öht fungerar ibland beror på att skalet som standard lämnar kvar * om ingenting matchar, vilket dock inte alls stämmer om man t.ex. har gjort inställningen:
Det är med andra ord bäst att skriva \* eller "*" eller '*' istället.
Re: unrar
Postat: 11 aug 2008, 17:49
av dmz
Okay. Hur bör jag göra för att, till exempel, lista alla .nfo i mappen /mnt/Movies/NYTT, på det sättet?
Re: unrar
Postat: 11 aug 2008, 18:29
av Konservburk
dmz skrev:Okay. Hur bör jag göra för att, till exempel, lista alla .nfo i mappen /mnt/Movies/NYTT, på det sättet?
Det beror ju på vad du är ute efter. Vill du att skalet ska expandera *.nfo till alla .nfo-filer så ska du såklart inte använda \* (eller liknande)...
Men eftersom vi inte vet om det ens finns någon enda .nfo-fil i /mnt/Movies/NYTT/ så är det där egentligen ingen bra metod (den misslyckas helt om det inte finns någon .nfo-fil). Vi kommer dessutom att lista innehållet i alla kataloger som råkar sluta på .nfo (om vi inte använder
ls -d istället). Man kan undvika * helt om man istället gör typ så här:
Men sjäv föredrar jag nog att använda
find i det här fallet:
Med
-maxdepth 1 för att slippa underkataloger. Lägg märke till att jag åter igen har skyddat * från skalet.
Re: unrar
Postat: 11 aug 2008, 18:42
av dmz
Härligt, det var metoden med find jag var ute efter.
Nä'r jag kör detta:
Listas alltså alla filer som slutar på .r* , är det en korrekt användning?
dmz@fuck:/mnt/Movies/XViD$ find -iname \*.r* -exec rm {}
find: missing argument to `-exec'
dmz@fuck:/mnt/Movies/XViD$ find -iname \*.r* -exec rm;
find: missing argument to `-exec'
Hm, vad är det för argument som förväntas?
Re: unrar
Postat: 11 aug 2008, 19:01
av Konservburk
dmz skrev:Nä'r jag kör detta:
Listas alltså alla filer som slutar på .r* , är det en korrekt användning?
Det där blev nästan rätt. Om du har sista * fri så matchar skalet först efter filer som uttryckligen börjar med "*.r". Men det är ju å andra sidan inte speciellt ofta man hur en fil med "*" i själva namnet
Borde ha varit:
eller:
Men om vi fortfarande pratar om rar så vill du nog egentligen göra så här:
Kod: Markera allt
find -iname '*.rar' -o -iname '*.r[0-9][0-9]'
eller:
Annars hittar du ju precis allt som råkar ha
.r någonstans i filnamnet.
Re: unrar
Postat: 11 aug 2008, 19:06
av dmz
Inte i filnamnet väl? Du menar väl i filändelsen?
Vad jag är ute efter är att t.ex kunna ta bort alla gamla rar-filer från en mapp med undermappar, men fick inte till det med -exec.
Re: unrar
Postat: 11 aug 2008, 19:22
av Konservburk
dmz skrev:Inte i filnamnet väl? Du menar väl i filändelsen?
Filändelser är något som microsoft har hittat på, det existerar egentligen inte i linux. Du kan ha ju punkter precis var du vill i filnamnen. En matchnig mot *.r* gör ingen skillnad på första eller sista punkten och matchar såväl
fil.rar som
hur.radio.fungerar.txt, osv.
dmz skrev:Vad jag är ute efter är att t.ex kunna ta bort alla gamla rar-filer från en mapp med undermappar, men fick inte till det med -exec.
Kod: Markera allt
find -iregex '.*\.r\(ar\|[0-9][0-9]\)' -exec rm {} \;
Men du bör för säkerhets skull först köra utan
-exec för att dubbelkolla så att ingenting har blivit fel.