GNU/Linux >> Linux の 問題 >  >> Linux

Bashで、最初のX行をスキップしてファイルを印刷します

尻尾が必要です。いくつかの例:

$ tail great-big-file.log
< Last 10 lines of great-big-file.log >

特定の数の「最初の」行をスキップする必要がある場合は、

$ tail -n +<N+1> <filename>
< filename, excluding first N lines. >

つまり、N 行をスキップする場合は、N+1 行目の印刷を開始します。例:

$ tail -n +11 /tmp/myfile
< /tmp/myfile, starting at line 11, or skipping the first 10 lines. >

最後の行だけを表示したい場合は、「+」を省略してください:

$ tail -n <N> <filename>
< last N lines of file. >

ファイルの最初の 10 行を削除する最も簡単な方法:

$ sed 1,10d file.txt

一般的な場合 X は、削除する最初の行の数です。コメント者と編集者の功績によるものです:

$ sed 1,Xd file.txt

最初の 2 行をスキップする場合:

tail -n +3 <filename>

最初の x 行をスキップしたい場合:

tail -n +$((x+1)) <filename>

システムで GNU tail を使用できる場合は、次の操作を実行できます:

tail -n +1000001 huge-file.log

+ です やりたいことをやるキャラ。 man ページから引用するには:

<ブロック引用>

K (バイト数または行数) の最初の文字が「+」の場合、各ファイルの先頭から K 番目の項目から印刷を開始します。

したがって、コメントに記載されているように、+1000001 を入力すると、最初の 1,000,000 行の後の最初の項目から印刷が開始されます。


Linux
  1. ファイルの行をループする方法は?

  2. Bashスクリプトがエイリアスを認識しないのはなぜですか?

  3. バッシュ‘?

  1. 次の行の最初の文字に基づいて行を連結しますか?

  2. テールはファイル全体を読み取りますか?

  3. 最初の行を除いて、ファイルから余分なヘッダー行を削除しますか?

  1. 最初と最後の行なしでファイルコンテンツを印刷しますか?

  2. N行を印刷した後の終了テール-f?

  3. ファイルの行をコマンドの引数として使用するにはどうすればよいですか?