В качестве ошибки говорится следующее:
raise ValueError("Ran into a %s where it wasn't expected" % token.gettokentype())
Измените его, как показано ниже, и проверьте:
raise ValueError('Ran into a %s where it wasn't expected' % (token.gettokentype()))
Используя sed:
sed -ne '/LastHeaderLine/,$p' <inputfile
будет соответствовать всему от соответствия regex в конец файла. 'p' печатает строки то соответствие.
Править:
Вообще-то, если задуматься Вы не хотите печатать соответствие строки LastHeaderLine. Это трудно сделать с sed. В жемчуге Вы могли сделать следующее:
perl -ne 'if ($flag) {print;} if (/LastHeaderFile/) {$flag=1;}' <inputfile
Это распечатало бы только строки строго после соответствия regex.
Подобный ответу Avi, но без включения строки с "LastHeaderLine".
sed -e '1,/LastHeaderLine/d'
Почему бы не попробовать awk за это? Это было бы похоже на это:
awk 'NR == 1, /LastHeaderLine/ { next } { print }' myinputfile > myoutputfile
где НОМЕР == 1 верен для первой строки,/LastHeaderLine/соответствует Вашей последней строке заголовка. Оператор запятой позволяет следующей функции {затем} стрелять для всех предложений в диапазон двух регулярных выражений. В этом случае это пропустит к следующей строке входа без дальнейшей операции. Для всех других входных строк это распечатает строки к стандартному выводу, который можно перенаправить использование>.