テキストファイルの一部をダウンストリーム操作としてパイプ(Python)

テキストファイルの一部をダウンストリーム操作としてパイプ(Python)

非常に大きなテキストファイルの一部をダウンストリームタスク(Python)にパイプしたいと思います。

デフォルトでは、すべての奇数行と偶数行の最初のn文字を取得したいのですが、まだ行の順序を維持したいと思います。

その理由は偶数行が非常に長いですが、最初の数文字しか必要ないからです。これにより、Pythonでファイルをすばやく読むことができます。

ベストアンサー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

おすすめ記事