Текст извлечения между двумя определенными строками

ddrescue

Можно попробовать ddrescue. Я прочитал рекомендацию для него, но у меня нет опыта.

Существует две программы, названные ddrescue (см. https://askubuntu.com/questions/211578/whats-the-difference-between-ddrescue-gddrescue-and-dd-rescue). Гну ddrescue является более новой и разработанный для преодоления некоторых проблем в более старом ddrescue.

Гну ddrescue использует файл карты и может записать много раз в тот же выходной файл, не делая той же работы снова или перезаписать предыдущие успешные чтения. Это вместо этого попытается заполнить дыры путем рассмотрения файла карты для обнаружения который секторы попытаться читать снова.

Предложенное использование для DVD (от Гну ddrescue руководство):

ddrescue -n -b2048 /dev/cdrom cdimage mapfile
ddrescue -d -r1 -b2048 /dev/cdrom cdimage mapfile

Первая строка извлечет легко читаемые данные из DVD. Вторая строка будет использовать прямой доступ к диску, чтобы попытаться читать больше и записать это в тот же выходной файл.

k3b

У меня есть хороший персональный опыт с K3b с надлежащими настройками: k3b --copy

Вы получаете большое окно и маленькое окно копирования. Проигнорируйте большой. Необходимо нажать расширенную настройку в маленькой. Затем Вы нажимаете на "ignore reading errors" так, чтобы он не останавливался в первой ошибке. Вы также фиксируете количество чтения попыток к довольно низкой стоимости, так как повторения могут иногда занимать много времени. Я часто устанавливал его в 1 на моей первой попытке, только для проверки, сколько секторов дает мне проблему.

При нажатии на опции, можно принять решение только произвести ISO-образ на диске. И после нажатия на изображение можно выбрать, где сохранить его. Очень часто несколько недостающих секторов даже не будут примечательны (даже несколько сотен). Но все это зависит от того, где они. K3b скажет Вам, какие секторы не могут быть считаны.

5
23.08.2014, 01:10
2 ответа

Вы можете подключить выход к awk:

$ ... | awk '/0\.1\.0/,/1\.0\.2/'
0.1.0
0.2.0
1.0.0
1.0.1
1.0.2
8
27.01.2020, 20:33

вы можете передать его по конвейеру sed :

.... | sed -n "/0.1.0/,/1.0.2/p" YourFile
6
27.01.2020, 20:33

Теги

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