SysRQ+B (загрузка) не работает, но O (отключение) — это

С помощью gnu awk с использованием gensub

awk '
/#/{
  a=$0
  b=length()
  getline
  $0=a RS$0
  while($0!=a){
    a=$0
    $0=gensub("([^#]*)#(.{"b--"}).","\\1\\2",1)}
}1' infile

Объяснить:

/ #/ :для каждой строки с#

a=$0 :сохранить строку в a

b=длина():получить длину в b

getline :получить следующую строку

$0=a RS$0 :добавить предыдущую строку, хранящуюся в a, в начало буфера $0, за которым следует RS в качестве разделителя записей

Теперь $0 содержит 2 строки

в то время как ($0!=a):в то время как строка, хранящаяся в a, отличается от буфера $0

a=$0 :получить буфер $0 в a

$0=gensub (" ([^ #] *)#(.{"b --"} ).","\\1\\2",1):удалите первый #в $0 и соответствующий символ во второй строке

Одновременно уменьшить (b --)длину первой строки на 1, потому что 1 #было удалено

1 :когда в первой строке больше нет #выведите $0

1
26.02.2020, 01:38
1 ответ

Наконец, оказывается, что это связано с той же проблемой, что и в этой связанной записи . Он работал, отпуская Syst , удерживая Alt , затем нажимая B .

Это меня немного удивляет, потому что я использую настольный компьютер с портом клавиатуры PS/2 (, а не со встроенной клавиатурой ноутбука ). Раньше я работал с дешевой клавиатурой Logitech, которая всегда была проблемой, но, похоже, все равно делала свою работу. Когда эта клавиатура умерла, я установил обратно старую клавиатуру Compaq года выпуска 2K (Model KB -9963 ), которая работает довольно хорошо и очень приятна в использовании, но явно страдает от той же проблемы.

1
28.04.2021, 23:22

Теги

Похожие вопросы