우분투 20에서 ps aux 출력 완료 명령이 누락되었습니다.

우분투 20에서 ps aux 출력 완료 명령이 누락되었습니다.

버전:

No LSB modules are available.
Distributor ID: Ubuntu
Description:    Ubuntu 20.04.4 LTS
Release:        20.04
Codename:       focal

htop 또는 ps aux를 사용하여 프로세스를 검사할 때 첫 번째 파이프 뒤에 명령의 나머지 부분이 표시되지 않습니다.

내가 실행한 명령은 다음과 같습니다.

ping -i 0.5 4.2.2.4 | while read row; do awk '{ $1=strftime("%Y-%m-%d %H:%M:%S",substr($0,2,10));print $0}' <<< $row;done | grep 'no answer' | tee log.txt > log_store.txt

ps aux의 출력은 다음과 같습니다.

UID        PID  PPID  C STIME TTY          TIME CMD
root         1     0  0 Mar20 ?        00:00:00 /lib/systemd/systemd
root        23     1  0 Mar20 ?        00:00:01 /lib/systemd/systemd-journald
root        25     1  0 Mar20 ?        00:00:00 /usr/sbin/cron -f
root        28     1  0 Mar20 ?        00:00:00 /usr/bin/python3 /usr/share/unattended-upgrades/unattended-upgrade-shutdown --wait-for-signal
root        31    30  0 Mar20 ?        00:00:24 ping -i 0.5 4.2.2.4  <--------------

보시다시피 첫 번째 파이프의 ping 부분만 표시됩니다. 나머지 부분을 어떻게든 볼 수 있는 방법이 있습니까?

답변1

의 출력 어딘가에 나타나야 하는 ping3개의 후속 프로세스( awk, grep및 )로 파이프되었습니다 .teeps aux

  1. bash 구문(이 경우 루프)은 bash의 내부 구문이므로 출력 while에 표시되지 않습니다 .ps

  2. ps -ef -H( -HHierachy와 같은)은 아마도 ps aux.

관련 정보