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

シェルスクリプトだけを使用してテキストファイルから特定の行を取得する

セッド:

sed '5!d' file

awk:

awk 'NR==5' file

line と仮定すると head を使用できる場合、必要な行番号を保持する変数です と tail 、それならとても簡単です:

head -n $line file | tail -1

そうでない場合は、これでうまくいくはずです:

x=0
want=5
cat lines | while read line; do
  x=$(( x+1 ))
  if [ $x -eq "$want" ]; then
    echo $line
    break
  fi
done

Linux
  1. Linuxコマンドラインでファイルから特定の行を削除する

  2. Bash スクリプト:セッションをログに記録するための bash スクリプトからのスクリプト コマンドの使用

  3. Bash シェル スクリプト内から Vim を開く

  1. Linuxシェルスクリプトを使用してテキストファイル内の一意の行のリストを生成する方法は?

  2. シェルスクリプトでフォークされた子プロセスから PID を取得する方法

  3. シェル スクリプトの各行から最初の 5 文字を取得する

  1. テキストファイルから最初の数行を効率的に削除しますか?

  2. スクリプトから正しい終了コードを取得できませんか?

  3. シェル スクリプトを使用して MAC アドレスを取得する