No meu trabalho atual, muitas vezes eu tenho que trabalhar com arquivos de máquinas Windows, que na maioria das vezes não é grande coisa, mas quando estou passando um lado a lado diff
to less
, não apenas o ^M
está sendo exibido, mas também atrapalha o recuo , como no seguinte:
<U+FEFF>using System;^M <U+FEFF>using System;^M
using System.Reflection;^M using System.Reflection;^M
using System.Runtime.Serializa^M using System.Runtime.Serializa^M
using System.Transactions;^M using System.Transactions;^M
(Eu particularmente não me importo com a lista de materiais UTF-8 na primeira linha, já que ela afeta apenas uma linha).
Eu sei que posso fazer um
diff -y <(tr -d '5' < file-a) <(tr -d '5' < file-b) | less
Mas é muita coisa para escrever, e quando file-a
e file-b
compartilham um caminho longo, você não pode usar o nicho de chaves do bash. E
diff -y file-{a,b} | tr -d '5' | less
não resolve, pois a formatação já está desarrumada.
Curiosamente, os itens a seguir são exibidos bem em termos de ^M
e recuo:
diff -y file-{a,b} | head
Então, minha pergunta é: como faço para que os diffs lado a lado sejam canalizados para menos sem os problemas mencionados anteriormente? (Como adicionar algum parâmetro para diff ou menos que eu não conheço)