Ignorar todo less text al comparar files con diff?

Para el command diff , para la comparación de files, ¿qué opciones se requieren para una comparación de files donde solo se compara el text?

Lo que quiero decir es que quiero ignorar todos los espacios, tabs, líneas nuevas, etc.

He estado probando diferentes opciones pero no he podido lograr el resultado deseado.

Puede preprocesar los files y luego comparar la secuencia. Por ejemplo, use tr para borrar todos los espacios y nuevas líneas.

 diff <( tr -d ' \n' <file1 ) <( tr -d ' \n' <file2) 

Los files de ejemplo son b que comparten el text pero no el espacio y las posiciones de la nueva línea:

 cat a 1 2 3 cat b 1 2 3 diff -sq ab Files a and b differ diff -sq <( tr -d ' \n' <a ) <( tr -d ' \n' <b ) Files /dev/fd/63 and /dev/fd/62 are identical 

Tenga en count que

  1. Esto no será diferente entre these words y th esew ord s
  2. Debes prestar mucha atención a los personajes que estás eliminando
  3. Los nombres de file de salida de diff son nombres de secuencias y no nombres de files

Consulte man tr para ver los caracteres especiales como tabs, etc. (tal vez el set [:space:] coincida con sus necesidades)