Я пытаюсь соответствовать 64 в:
state 0x0, keycode 64 (keysym 0xffe9, Alt_L), same_screen YES,
и извлечь его.
я пробовал
echo "$line" | sed -n -e 's/^.*keycode\s\([0-9]+\).*$/\1/p'
Что, на мой взгляд, должно работать, но это не так.
После еще одного тестирования регулярное выражение успешно совпадает, пока я не начну вводить цифры.
echo "$line" | sed -n -e 's/^.*keycode\s.*/test/p'
работает нормально, но
echo "$line" | sed -n -e 's/^.*keycode\s\d.*/test/p'
echo "$line" | sed -n -e 's/^.*keycode\s[0-9].*/test/p'
и связанные не работают, даже если после пробела есть цифра.
Я что-то упускаю из виду?