Tengo un archivo con dos columnas como se muestra a continuación (ejemplo):
ARCHIVO 1:
John 1
Peter 2
Michael Rod 3
Su 7
Louise 9
Necesito formatear esto y mi salida esperada debería ser:
ARCHIVO 1:
John 1
Peter 2
Michael Rod 3
Su 7
Louise 9

Michael Rod 3son 2 columnas y no 3?Respuestas:
Si la entrada hubiera sido solo dos columnas, habría sugerido usar
column -t. Sin embargo, esto no funciona aquí, ya que lacolumnutilidad tratará cualquier número de espacios o pestañas como delimitadores de columna:"Michael Rod" tiene dos columnas, de modo que una sola fila tiene una columna más que las otras filas, lo que desordena la salida.
Podemos solucionar esto insertando un carácter de tabulación antes de la última columna y luego dejemos
columnusar (solo) eso como delimitador:En Awk,
NFes el número de campos (columnas) y$NFson los datos en el último campo. El script que estoy usando simplemente modifica los datos del último campo al anteponer un carácter de tabulación, antes de imprimir la línea completa.Si su shell no comprende
$'\t', puede elegir otro personaje que no sea parte de los datos:fuente