Portál AbcLinuxu, 25. dubna 2024 17:58


Dotaz: patching v cyklu

9.3.2011 23:15 Kamil.Plech
patching v cyklu
Přečteno: 196×
Odpovědět | Admin
Dobrý den.

Mám seznam souborů k "opatchování" uložený v externím souboru. Mým problémem je, že pokud chci v cyklu while tyto soubory procházet a každý jeden patchnout, po prvním patchi mi řízení skriptu skočí za něj (jako by na onom místě byl break) a v dalším patchování se nepokračuje. Existuje nějaké řešení, jak se tomuto vyhnout? (manuál jsem prošel několikrát, ovšem vhodný přepínač nenašel).

Předem děkuji za rady a nápady. Kami.

Řešení dotazu:


Nástroje: Začni sledovat (0) ?Zašle upozornění na váš email při vložení nového komentáře.

Odpovědi

michich avatar 9.3.2011 23:23 michich | skóre: 51 | blog: ohrivane_parky
Rozbalit Rozbalit vše Re: patching v cyklu
Odpovědět | | Sbalit | Link | Blokovat | Admin
Vlož sem ten skript.
10.3.2011 01:15 Kamil.Plech
Rozbalit Rozbalit vše Re: patching v cyklu
while read promenna; do

patch $promenna;

done < soubor;

přičemž v souboru jsou uloženy patche jako:

a.patch

b.patch

c.patch
10.3.2011 05:53 Franta Hanzlík
Rozbalit Rozbalit vše Re: patching v cyklu
exec 3<soubor
while read -u 3 promenna; do
  patch $promenna
done
10.3.2011 11:51 Kamil.Plech
Rozbalit Rozbalit vše Re: patching v cyklu
Děkuji za radu, bohužel toto nic neřeší a cyklus se stejně po prvním opatchování ukončí :-(
10.3.2011 12:44 Franta Hanzlík
Rozbalit Rozbalit vše Re: patching v cyklu
Oops, těžké ráno :) Problém bude asi v tom, že patch čeká pach na stdin - takže by to mělo být:
while read promenna; do
  patch < $promenna
done <soubor
10.3.2011 12:53 Franta Hanzlík
Rozbalit Rozbalit vše Re: patching v cyklu
pach -> patch

(vypadá to i na těžké odpoledne ;)
10.3.2011 18:58 Kamil.Plech
Rozbalit Rozbalit vše Re: patching v cyklu
Ať žije distribuce chyb :-D :-(

Ano, cyklus již akceptuje všechny patche, ovšem při aplikaci každého z nich následuje toto chybové hlášení:

1 out of 1 hunk FAILED -- saving rejects to file soubor_o_jehoz_patch_jsem_se_snazil.rej
10.3.2011 20:13 chrono
Rozbalit Rozbalit vše Re: patching v cyklu
Sú tie záplaty aplikované v správnom poradí a je verzia zdrojových kódov správna?
10.3.2011 20:42 Michal Kubeček | skóre: 72 | Luštěnice
Rozbalit Rozbalit vše Re: patching v cyklu
Pravděpodobně jsou ty patche určeny pro jinou verzi, než na jakou se je snažíte aplikovat.
10.3.2011 21:53 pht | skóre: 48 | blog: pht
Rozbalit Rozbalit vše Re: patching v cyklu
možná to chce něco jako patch -p1
In Ada the typical infinite loop would normally be terminated by detonation.
10.3.2011 22:46 Michal Kubeček | skóre: 72 | Luštěnice
Rozbalit Rozbalit vše Re: patching v cyklu

To by hláška vypadala jinak - patch by protestoval, že nemůže najít soubor, který má opatchovat. Taky mne napadlo, že by mohlo jít o reverzní patch, ale na to patch obvykle přijde sám a navrhne to.

Celkově takhle naslepo těžko hádat, prostě tam ty patche z nějakého důvodu nepasují.

Založit nové vláknoNahoru

Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.