GNU/Linux >> LINUX-Kenntnisse >  >> Linux

Holen Sie sich eine bestimmte Zeile aus einer Textdatei, indem Sie nur ein Shell-Skript verwenden

sed:

sed '5!d' file

awk:

awk 'NR==5' file

Angenommen line ist eine Variable, die Ihre erforderliche Zeilennummer enthält, wenn Sie head verwenden können und tail , dann ist es ganz einfach:

head -n $line file | tail -1

Wenn nicht, sollte dies funktionieren:

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. Verwenden von Google Drive über die Linux-Befehlszeile

  2. Unfähig, den richtigen Exit-Code aus einem Skript zu erhalten?

  3. Verwenden des passwd-Befehls innerhalb eines Shell-Skripts

  4. Mtime einer bestimmten Datei mit Bash abrufen?

  5. Wie erstelle ich eine Liste eindeutiger Zeilen in einer Textdatei mit einem Linux-Shell-Skript?

So entfernen Sie Zeilen aus einer Datei mit dem Sed-Befehl

Bash-Skript zum Zentrieren von Fortune/Text von Stdin/Pipe?

Öffnen Sie Vim aus einem Bash-Shell-Skript heraus

Holen Sie sich die ersten 5 Zeichen aus jeder Zeile im Shell-Skript

Rufen Sie die MAC-Adresse mit Shell-Skript ab

Bash-Skript fügt Text an die erste Zeile einer Datei an