Вы можете повторно -напечатать первый столбец, выровняв -по левому краю в достаточно широком поле:
$ awk '{$1 = sprintf("%-30s", $1)} 1' file
super+t sticky toggle
super+Shift+space floating toggle
super+Shift+r restart
super+Shift+d mode $mode_launcher
super+Shift+c reload
super+r mode resize
super+Return i3-sensible-terminal
super+q kill
super+n Nautilus scratchpad show
super+m neomutt scratchpad show
super+minus scratchpad show
super+f fullscreen toggle
super+c bar mode toggle
super+button2 kill
super+alt+x systemctl -i suspend
super+alt+v cmus
super+alt+m neomutt
super+alt+c ~/bin/editinvim
super+alt+b ranger
Если вы хотите автоматически выбрать подходящую ширину на основе длины столбца 1, то:
awk '
NR==FNR {w = length($1) > w ? length($1) : w; next}
{$1 = sprintf("%-*s", w+4, $1)}
1
' file file
Вы не можете.
Вам необходимо знать семантику каждой выполняемой команды.
Любой аргумент, заданный команде в командной строке, просто передается программе, которую затем можно реализовать так, как она считает нужным. Программа даже не обязана быть последовательной в том, как она интерпретирует аргументы (, она, вероятно, не очень удобна, если она делает это ).
Вам также необходимо учитывать, что некоторые пользователи могли адресовать не -существующие файлы -как опечатку (и они также могут встречаться в имени программы ), пытаясь увидеть, файл существует, чтобы ввести вас в заблуждение или по какой-либо другой причине. Думаю, я даже видел программы, которые вели себя по-разному в зависимости от того, был ли данный аргумент именем существующего файла или нет, но что-то делали в обоих случаях.
Вкладка -данные завершения, которую предлагает использовать ctrl -alt -Делор, в основном представляет собой способ кодирования семантики многих (часто используемых )команд, но они могут (Я не тратил много времени на просмотр этих ), в зависимости от того, какая оболочка была у пользователя, и с тех пор они могут быть изменены. Таким образом, хотя это может обеспечить путь вперед, не обошлось без проблем.
Это может включать некоторую ручную работу. Но когда вы создали шаблон для команды, его можно -использовать повторно. Интересно, можно ли использовать данные конфигурации для завершения вкладки -. Обычно (, но не всегда )знает.