Добавлять пробелы в конце строки с помощью функции printf в unix - PullRequest
1 голос
/ 20 марта 2019

У меня есть следующий скрипт, работающий в Unix, который предполагает заполнение 9 пробелами в конце строки. Однако результат был не таким, как я ожидал.

# define SPACE " "

void main {
  printf("%13s%9s\n", "Output 1: 123", SPACE);
  printf("%13s%-9s\n", "Output 2: 123", SPACE);
  printf("%13s%9s%1s\n", "Output 3: 123", SPACE, "|");
  printf("%13s%-9s%1s\n", "Output 4: 123", SPACE, "|");
}

Результат:

Output 1: 123
Output 2: 123
Output 3: 123         |
Output 4: 123         |

Выход 1 и 2 обрезают пробелы в конце, выход 3 и 4 имеет 9 пробелов, если я что-то оставлю позади.

Как показать «Вывод 1: 123»?

развеселить

1 Ответ

1 голос
/ 20 марта 2019

$ awk '{printf "% -ns \ n", $ 0}' Где n - количество пробелов, добавляемых для каждой строки $ 0 представляет всю строку

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...