Avatar billede Lasse Novice
07. december 2000 - 16:41 Der er 8 kommentarer og
2 løsninger

diff og patch

Jeg har lavet et script der installerer en masse programmel. Da nogen af programmernes konfigurationsfiler skal ændres, skal jeg finde en smart måde. Jeg VED at det på en nem måde kan gøres med diff og patch? Er der nogen der ved hvordan man gør det?
Avatar billede beaviz Nybegynder
07. december 2000 - 16:57 #1
For at finde ændringer og gemme dem i en gzip pakket fil:
diff configfil configfil_ny|gzip > dette_er_en_patch_fil.gz

For at patche de gamle configfiler til at ligne de nye:
zcat dette_er_en_patch_fil.gz|patch configfil
Avatar billede Lasse Novice
07. december 2000 - 17:14 #2
ja, men det er ikke lige sådan jeg vil have det. Her kommer et eks.

Jeg har en fil (httpd.conf) hvori der står:
.
.
.
Options Indexes FollowSymLinks MultiViews
.
.
.

Det vil jeg gerne ændre til:
.
.
.
Options Indexes FollowSymLinks MultiViews ExecCGI
.
.
.

hvordan gør jeg det uden at ændre noget af det andet?
Avatar billede Lasse Novice
07. december 2000 - 17:16 #3
en nærmere beskrivelse (evt eks) ønskes... - det er trods alt 220 point
Avatar billede Lasse Novice
07. december 2000 - 17:18 #4
en sidste ting. Jeg har httpd filen, men har KUN strengen \"Options Indexes FollowSymLinks MultiViews ExecCGI\". Med den linie skal jeg kunne ændre det!!!
Avatar billede Lasse Novice
07. december 2000 - 17:24 #5
kan diff overhovedet bruges til noget? Resultatet af:
diff 1 2 > 3
og bagefter
patch 1 3

er vel egentlig bare

2

eller hvad?
Avatar billede Lasse Novice
07. december 2000 - 17:25 #6
så kan man sku lige så godt kopiere filen... der må være noget jeg ikke lige har forstået
Avatar billede beaviz Nybegynder
07. december 2000 - 17:25 #7
Jeg har httpd filen, men har KUN strengen - mangler der et \"ikke\"?
Hvis du ikke ved hvordan filen ellers ser ud, kan patch _ikke_ gøre det!
Mit eksempel er ca. hvad diff og patch kan, diff/patch opererer på filniveau (argh, hvordan staver man det) - ikke på streng-niveau.
Avatar billede beaviz Nybegynder
07. december 2000 - 17:27 #8
gooky: diff finder forskellen mellem de to filer, så du ikek behøver at flytte så meget data, eller så du hurtigt kan overskue hvad der er ændret i en fil. At kopiere den gamle fil ind over den nye ville give samme effekt som diff->patch ja.
Avatar billede Lasse Novice
07. december 2000 - 17:46 #9
ok... jeg har søgt hjælp andet steds inden jeg læste dette...

jo der mangler et ikke... men nu kopierer jeg sku bare filen oveni... den fylder jo ikke alverden. jeg troede bare at der var en smartere måde.

For den hurtige svar tid... halvdelen hver da jeg ikke 100% fik løst mit problem. Håber det er ok!!!
Avatar billede beaviz Nybegynder
07. december 2000 - 18:14 #10
Nej, for problemet kunne ikke løses med diff/patch hvis du ikke kender hele den gamle fil, men kun en streng fra den :)
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
IT-kurser om Microsoft 365, sikkerhed, personlig vækst, udvikling, digital markedsføring, grafisk design, SAP og forretningsanalyse.

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester