Вы можете использовать awk для текста следующим образом:
awk -F"|" '{printf("%-15s \t |%-10i\n", $1, $2)}'
Здесь я установил максимальную длину для 1-го столбца как «15», а для второго как «10». Вы можете изменить эти числа, если ожидаете большую длину.
Объяснение:
- Флаг "- F" определяет разделитель как "|"
- "% -15s \ t |% -10i \ n "- этот раздел определяет, как мы хотим отформатировать строку вывода. '-' в '-15s' - для выравнивания выходного столбца по левому краю, а '15s' - для строки длиной 15 символов. Точно так же «-10i» соответствует целочисленному значению 10 di git. «\ t» и «\ n» - это добавить пробел табуляции между ними и пробел строки в конце.
Вывод:
➜ test cat test.txt | awk -F"|" '{printf("%-15s \t |%-10i\n", $1, $2)}'
E993143 |65282
C960954567 |50222
P1_ABCDEFG_bbb |26153
A960416 |25654
D987747 |13410
➜ test