cutコマンドを使用してファイルの最初の20行を印刷する方法

cutコマンドを使用してファイルの最初の20行を印刷する方法

100行のテキストを含むファイルがあり、最初の20行だけを印刷するだけです。

切り取りコマンドのみを使用して印刷する方法

ベストアンサー1

いくつかのcut実装(GNUとbusyboxを含む)では、次のことができます。

cut -d'
' -f1-20 < your-file

'...'(引用符の中に改行文字があるように2行になっています。ksh93$'...'スタイルの引用符をサポートするシェルの場合は、代わりに使用できます。-d$'\n'

しかし、これは標準でもなく移植性もありません。

また、文書化されておらず、実装思考のように見えるため、今後のバージョンでは予告なく動作が中断される可能性が高くなります。

少なくともGNUとbusyboxの場合、cut入力を完全に読み取るため、たとえばyes出力は完了しません。

作業に適したツールは次のとおりですhead

head -n 20 < your-file

以下を使用することもできますがsed

sed 20q < your-file

またはawk:

awk '{print}; NR == 20 {exit}' < your-file

おすすめ記事