Bash | Pobieranie z pliku

0

Dzień dobry, mam problem otóz muszę z pliku /proc/pid/status pobrać 7 linijke która zawiera numer ppid procesu, jak chce to zrobić przy uzyciu seda to pobiera mi cała linie np. PPID: 23
a chce aby tylko mi pobierało sam numer. Dziękuje za wszelką pomoc.

2
awk -F "\t" '/^PPid:/ { print $(NF) }' /proc/<pid>/status

-F ustawia separator na tab
'/^PPid:/ sprawia, że to co znajduje się w bloku wykona się tylko gdy wyrażenie regularne zostało dopasowane
NF to liczba pól liczona od 1 w rozbitej linijce wejścia, a $(NF), to zawartość pola pod indeksem NF

Jeżeli nie chcesz wyrażenia regularnego, to możesz bezpośredni wypisać 7 linijkę:

awk -F "\t" 'NR == 7 { print $(NF) }' /proc/<pid>/status
2
> sed -n '/^PPid:/{s/^[^0-9]*//p;q}' /proc/31435/status
22587
> awk '$1 == "PPid:" { print $2; exit }' /proc/31435/status
22587
> 

1 użytkowników online, w tym zalogowanych: 0, gości: 1