Esto debería ser realmente simple, pero por alguna razón no está funcionando:
sed -i.bak -E 's/\t/ /' file.txt
En lugar de reemplazar caracteres de tabulación, está reemplazando tcaracteres. He probado todas las variaciones de esto que se me ocurrieron, jugando con citas, etc. Busqué en Google y encontré que todos los demás usaban expresiones bastante similares y parecen funcionar para ellos.
El -Ees una cosa de OS X. Pensé que el fracaso podría ser el resultado de una peculiaridad extraña de OS X sed, así que lo probé también con Ruby (sin el -i), y obtuve el mismo resultado:
ruby -pe '$_.gsub!(/\t/," ")' < file.txt > file.new
Estoy usando Bash 3.2.51 en OS X e iTerm, aunque no puedo ver cómo alguno de ellos podría ser terriblemente relevante. No he establecido ninguna variable de entorno extraña, aunque puedo publicar cualquiera que creas que puede ser relevante.
¿Qué podría estar mal?
ACTUALIZACIÓN : Debo haber hecho algún otro error tipográfico o de ortografía cuando probé la versión de Ruby, ya Gilles señala que hace el trabajo (y he nunca se tuvo que me guiaron a mal!). No estoy seguro de lo que sucedió, pero estoy bastante seguro de que debe haber sido mi error.
\ten laseddeclaración conCTRL-V<TAB>dónde<TAB>está la tecla de tabulación y laCTRL-Vtecla de control yvpresionar juntas.