Я пытаюсь выполнить простой анализ вывода команды xinput
в сценарии оболочки.То, что я пытаюсь сделать, прекрасно работает в командной строке, но не работает в сценарии.
Вот моя командная строка:
xinput list | awk '/Name of my Device id[0-9]* \[slave pointer/'
Вывод предыдущей команды:
⎜ ↳ Name of my Device id=12 [slave pointer (2)]
В ответ на приглашение я вкладываю вкладки, нажимая CTRL-V, TAB .Когда в сценарии я ввожу строку, которая гласит:
xinput list | awk '/Name of my Device id[0-9]*/'
, которая возвращает три строки данных.Как только я добавлю еще одну вкладку, вот так:
xinput list | awk '/Name of my Device id[0-9]* /'
Я больше не получаю вывод.Я пробовал как с CTRL-V, TAB , так и просто с TAB .Я также пробовал вручную вводить всю строку сценария с нуля на случай, если там где-то есть непечатный текст.Почему awk
может работать с первой вкладкой, а не со второй?Кстати, я пробовал это с dash, bash и zsh.Поведение идентично.
Большое спасибо.
PS Я забыл упомянуть, что мой редактор vim.
PPS
xinput list | awk '/Name of my Device id[0-9]* \[slave pointer/' |
sed 'y/ \t/_$/'
вывод:
⎜___↳_Name_of_my_Device$id=12$[slave__pointer__(2)]