私は awk/gawk を学んでいます。だから最近は、練習の機会を増やすために、問題を解決しようとしています。
私の同僚は昨日質問をしました、
「ファイルから最初と最後の行を削除する方法」
. 私はそれがうまくいくことを知っていsed '1d;$d' file
ます。head/tail
パフォーマンスが悪くても機能します。私は彼にsed 1を話しました、彼は幸せでした。
後で、私は awk ワンライナーを書こうとしていました: これまでのところ、私が得たものは:
awk 'NR>1{a[++k]=$0}END{for(i=1;i<k;i++)print a[i]}'
これにより、最後の行をスキップするためだけに、ファイル全体が配列に格納されます。それを行うためのより簡単な(またはより良い)方法があるはずだと感じています..
(より簡単で、より速く、より良い方法がない場合は、質問を削除します)