0
(09-09-2022, 12:44)dedito napisał(a): Przykład:
Czyli interesują nas kolumny danych nr 1, 2, 7Kod:ps -fe
UID PID PPID C STIME TTY TIME CMD
webmast+ 1 0 0 06:19 ? 00:00:00 /dev/init -- node /var/www/html/
...
No to dalej, korzystając z Twojego przykładu:
Widać, że dane wyszły ale bez separatorów.Kod:ps -fe | awk '($1 !="root") {print $1 $2 $7}'
UIDPIDTIME
webmast+100:00:00p
No to trzeba w tego pogooglać za przykładami i przykładowo zmodyfikować to tak:
idąc tym tokiem można to jeszcze zmodyfikować tak:Kod:ps -fe | awk '($1 !="root") {print $1 " " $2 " " $7}'
UID PID TIME
webmast+ 1 00:00:00webmast+ 8 00:18:02
...
czyli jak widać można odrazu uzyskać porządzane wyniki bez definiowania zmiennych.Kod:ps -fe | awk '($1 !="root") {print "Proc. " $1 " " $2 " wyk. " $7}'
Proc. UID PID wyk. TIME
Proc. webmast+ 1 wyk. 00:00:00
...
Teraz mam coś takiego kod:
Kod:
#!/bin/bash
#echo Proces "$USR" "$PID" "$KOM" wykonuje się: $CZAS
IFS=$'\n'
for i in `ps -eo "%U %P %a %t " | awk '($1 !="root") {print $1 " " $2 " " $3 " " $6 " " $7}'`;
do
echo $i
# echo Proces "$USR" "$PID" "$KOM" wykonuje się: $CZAS
USER=$1
PID=$2
KOM=$3
CZAS=$5
echo $USER
echo $PID
done
wynik:
Kod:
USER PPID COMMAND
polkitd 1 /usr/lib/polkit-1/polkitd
libstor+ 1 /usr/bin/lsmd
dbus 1 /usr/bin/dbus-daemon
chrony 1 /usr/sbin/chronyd
clamscan 1 /usr/sbin/clamd 27-22:48:09
mysql 1 /usr/libexec/mysqld
clamupd+ 1 /usr/bin/freshclam 27-22:47:09
apache 40988 php-fpm: 23-21:37:51
apache 40988 php-fpm: 23-21:37:51
apache 40988 php-fpm: 23-21:37:51
apache 40988 php-fpm: 23-21:37:51
apache 40988 php-fpm: 23-21:37:51
nrpe 1 /usr/sbin/nrpe 20-22:38:29
exim 1 /usr/sbin/exim 8-05:02:05
apache 450953 /usr/sbin/httpd
apache 450953 /usr/sbin/httpd
apache 450953 /usr/sbin/httpd
apache 450953 /usr/sbin/httpd
apache 450953 /usr/sbin/httpd
opph7481 41012 php-fpm: 5-10:00:16
opph7481 41012 php-fpm: 5-10:00:16
opph7481 41012 php-fpm: 5-10:00:16
opph7481 41012 php-fpm: 5-10:00:16
opph7481 41012 php-fpm: 5-10:00:16
opph7481 41012 php-fpm: 5-10:00:16
apache 450953 /usr/sbin/httpd
apache 510631 /usr/sbin/httpd 1-23:20:55
apache 510631 /usr/sbin/httpd 1-23:20:55
apache 510631 /usr/sbin/httpd 1-23:20:55
apache 510631 /usr/sbin/httpd 1-23:20:55
apache 547135 /usr/sbin/httpd 04:18:55
apache 547135 /usr/sbin/httpd 04:18:55
apache 547135 /usr/sbin/httpd 04:18:55
apache 547135 /usr/sbin/httpd 04:18:55
Testowo dałem te zmienne czy w ogóle coś jest w nich jak widać nie ma nic.. Nie wiem w jaki sposób te kolumny przekierować do zmiennych , a później na echo..