awk 'NR == 1, /XXX/ {next}; /123/ {print; exit}' < input.txt
пропустит все строки до первой, содержащей XXX
, а затем напечатает первую строку, содержащую 123
, в оставшихся строках.
Для произвольных строк, хранящихся в переменных:
START='XXX' NEEDLE='fancy string with " and *' awk '
NR == 1, index($0, ENVIRON["START"]) {next}
index($0, ENVIRON["NEEDLE"]) {print; exit}' < input.txt
Если вы загрузите исходный код e2fsprogs, вы сможете создать инструмент findsuper
для сканирования диска с целью поиска суперблоков на нем. Вы должны быть в состоянии найти два разных UUID суперблока -из клонированной копии в начале диска и из старой файловой системы в конце диска.
Если вы запустите e2fsck с суперблоком из старой файловой системы, возможно, удастся восстановить больше файловой системы, если, например. старые блоки журнала могут быть восстановлены обратно в файловую систему.
В любом случае, e2fsck (предпочтительнее запускать на образе резервной копии на диске ), он свяжет все файлы, которые сможет найти, в lost+found
, поскольку корневой каталог в начале диска наверняка будет перезаписан.