Cómo pasar opciones al command diff al usar diff3

diff admite opciones que no son compatibles con diff3 en macOS Sierra. Por ejemplo, diff admite la opción -b para ignorar los cambios de espacio en blanco, pero diff3 no lo hace.

Sin embargo, diff3 admite la opción --diff-program que supongo que se puede usar para pasar un progtwig que invocará diff con las opciones deseadas.

Como tal, creé un progtwig mydiff así:

 diff -b $1 $2 

pero al ejecutar diff3 --diff-program=./mydiff left.txt base.txt right.txt en la línea de command, recibí el siguiente error:

 diff: missing operand after `--' diff: Try `diff --help' for more information. diff3: subsidiary program `./mydiff' failed 

¿Cómo se puede resolver esto?

¿Hay alguna manera de evitar crear mydiff y pasar las opciones directamente en la línea de command configurando --diff-program=... alguna manera?

Gracias

El problema es que diff3 invocará el command diff especificado con estos parameters: --horizon-lines=100 -- F1 F2 donde F1 y F2 son parameters de file. La forma en que escribió mydiff , cuando ejecuta diff3 --diff-program=./mydiff left.txt base.txt right.txt , esto se ejecutará:

 diff -b --horizon-lines=100 -- 

Si ejecuta esto, obtendrá los mismos errores.

La forma correcta de escribir mydiff :

 #!/bin/sh diff -b "$@" 

Y no, lamentablemente no hay forma de escribir diff -b alguna manera en línea, necesita crear un script dedicado para que funcione con diff3 .