¿Hay algún comando o conjunto de comandos que pueda usar para alinear horizontalmente líneas de texto con un carácter arbitrario? Por ejemplo, con una lista de direcciones de correo electrónico, la salida produciría un archivo de texto con todos los caracteres '@' alineados verticalmente.
Para tener éxito, creo que se debe agregar un número variable de espacios vacíos al comienzo de la mayoría de las líneas. No quiero columnas separadas, ya que requieren más esfuerzo para leer (por ejemplo, column -t -s "@" < file.txt
).
Antes de:
123@example.com
456789@example.net
01234@something-else.com
Después:
123@example.com
456789@example.net
01234@something-else.com
Dicho de otra manera: ¿puedo especificar que un carácter sea un punto de anclaje, alrededor del cual el texto circundante está centrado horizontalmente? Mi caso de uso para esto son las direcciones de correo electrónico, para que sean más fáciles de escanear visualmente.
@
símbolos múltiples no deberían ser un problema con las direcciones de correo electrónico, pero un usuario debería poder seleccionar qué instancia de un carácter por línea será el 'ancla' alrededor del cual se centra el otro texto.
@
permiten varios símbolos en las direcciones de correo electrónico, por ejemplo tom"@brossmann"@example.com
. Por eso pregunté qué debería pasar si hay varios @
símbolos :).
@
No se permiten múltiples símbolos en una variedad de servicios de correo electrónico. Es completamente razonable esperar correos electrónicos "normales" que se ajusten a un estándar más estricto que el "real", a menos que se trate de una entrada de usuario sin filtrar, en cuyo caso es más probable que trate con líneas sin @
.
@
símbolos?