передать часть текстового файла в подчиненную работу (python)

Я хочу передать часть очень большого текстового файла по конвейеру для последующей работы (python).

В принципе, я хочу получить все нечетные строки и первые n символов четных строк, но я все же хочу сохранить порядок строк.

Причина в том, что четные строки очень-очень длинные, но мне нужны только первые несколько символов. Это может значительно ускорить чтение файла в Python.

0
12.02.2017, 22:33
1 ответ

Вот решение в awk :

$ cat testfile 
foo
asdkjasjdka
bar
kjsdksjdkssd
$ awk -v n=2 'NR % 2 == 1 { print } NR % 2 == 0 { print substr($0, 1, n) }' testfile
foo
as
bar
kj
1
28.01.2020, 02:46

Теги

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