Pipe diff file em patch?

4

Existe uma maneira de canalizar a saída do diff em patch ? O parâmetro -i é para especificar um arquivo diff, mas eu só quero fazer isso de forma mais dinâmica, já que atualizarei regularmente em um diretório que muda com freqüência.

Para instacne, algo nos moldes de

patch -b | diff -Nub . /current-files

?

O arquivo man diz

-i patchfile  or  --input=patchfile
Read the patch from patchfile.  If patchfile is -, read from standard input, the default.

Mas quando eu tento, só vejo a saída do diff na tela, sem alterações aplicadas:

testb $> ls
file.txt

testb $> patch -i - | diff -Nub . ../testa
diff -Nub ./file.txt ../testa/file.txt
--- ./file.txt  2011-07-12 09:40:08.195467000 -0400
+++ ../testa/file.txt   2011-07-12 09:39:11.181666500 -0400
@@ -1,9 +1,7 @@
 ijaosdfji
 jaiosdfjio
 jklasdkml
-asdkml
-s;lnk
-lsadjkl
-asdfas
-asdf
+klasdkml
+nas;lnk
+jklsadjkl

diff -Nub ./file2.txt ../testa/file2.txt
--- ./file2.txt 1969-12-31 19:00:00.000000000 -0500
+++ ../testa/file2.txt  2011-07-12 09:39:44.196235000 -0400
@@ -0,0 +1,6 @@
+aljksdf
+jklasdflkjlknm
+nksalk;
+klaskl;
+ioasjdoiaj
+lkmasd'lkm

testb $> ls
file.txt
    
por user394 12.07.2011 / 15:39

2 respostas

13

Você não quer o contrário?

diff -Nub . /current-files | patch -b
    
por 12.07.2011 / 15:45
0
patch -p1 << EOF
diff --git a/debian.master/config/config.common.ubuntu b/debian.master/config/config.common.ubuntu
index 5ff32cb997e9..8a190d3a0299 100644
--- a/debian.master/config/config.common.ubuntu
+++ b/debian.master/config/config.common.ubuntu
@@ -10153,7 +10153,7 @@ CONFIG_VIDEO_ZORAN_ZR36060=m
 CONFIG_VIPERBOARD_ADC=m
 CONFIG_VIRTIO=y
 CONFIG_VIRTIO_BALLOON=y
-CONFIG_VIRTIO_BLK=m
+CONFIG_VIRTIO_BLK=y
 CONFIG_VIRTIO_BLK_SCSI=y
 CONFIG_VIRTIO_CONSOLE=y
 CONFIG_VIRTIO_INPUT=m
EOF

Exemplo de: link

    
por 09.10.2018 / 00:50

Tags