Домашнее задание 12
Cкрипт как замена ps ax
Для выполнение задания используется Ubuntu Server 24.04
Суть работы скрипта
Пишем скрипт, который будет анализировать информацию из /proc и выводить в консоль. Мой скрипт будет выводить следующую информацию:
- Имя пользователя, от имени которого запущен процесс.
- PID процесса
- PPID (pid родителя)
- Процессорное время использования
- Потребление оперативной памяти
- Текущий статус
- Командная строка или имя процесса
Все полученные данные, сортируем по PID
Копируем скрипт cкрипт myps.sh
Даем права на запуск
nimda@ubuntu:~$ sudo chmod +x /home/nimda/myps.sh
Запускаем скрипт, и смотрим на вывод
nimda@ubuntu:~$ ./myps.sh
User PID PPID CPU_Time Memory Status Command
------------------------------------------------------------------------------------------
root 1 0 00:02 13240 S /sbin/init
root 2 0 00:00 0 S [kthreadd]
root 3 2 00:00 0 S [pool_workqueue_release]
root 4 2 00:00 0 I [kworker/R-rcu_g]
root 5 2 00:00 0 I [kworker/R-rcu_p]
root 6 2 00:00 0 I [kworker/R-slub_]
root 7 2 00:00 0 I [kworker/R-netns]
root 11 2 00:00 0 I [kworker/u256:0-ext4-rsv-conversion]
root 12 2 00:00 0 I [kworker/R-mm_pe]
root 13 2 00:00 0 I [rcu_tasks_kthread]
root 14 2 00:00 0 I [rcu_tasks_rude_kthread]
root 15 2 00:00 0 I [rcu_tasks_trace_kthread]
root 16 2 00:01 0 S [ksoftirqd/0]
root 17 2 00:01 0 I [rcu_preempt]
root 18 2 00:00 0 S [migration/0]
root 19 2 00:00 0 S [idle_inject/0]
root 20 2 00:00 0 S [cpuhp/0]
root 21 2 00:00 0 S [cpuhp/1]
...
...
root 136247 1 00:00 6016 T top
root 136249 1766 00:00 10368 S sshd: nimda [priv]
nimda 136347 136249 00:00 6836 S sshd: nimda@pts/7
nimda 136348 136347 00:00 5840 S -bash
nimda 136359 136348 00:06 5760 T htop
root 165184 2 00:00 0 I [kworker/u258:0-events_unbound]
nimda 165627 136348 00:16 6572 S htop
root 165658 2 00:00 0 I [kworker/u257:0-events_power_efficient]
root 165993 2 00:00 0 I [kworker/u258:3-writeback]
root 221356 2 00:00 0 I [kworker/0:1-events]
root 251214 2 00:00 0 I [kworker/u258:4-events_unbound]
root 314564 2 00:00 0 I [kworker/u257:3-events_power_efficient]
root 314570 2 00:00 0 I [kworker/1:0-events]
root 329833 2 00:00 0 I [kworker/0:2-events]
root 329834 2 00:00 0 I [kworker/u257:1-events_power_efficient]
root 329836 2 00:00 0 I [kworker/1:3-events]
root 329864 2 00:00 0 I [kworker/u258:1-flush-252:0]
root 329872 1766 00:00 10368 S sshd: nimda [priv]
root 329874 2 00:00 0 I [kworker/1:1-events]
nimda 329971 329872 00:00 6832 S sshd: nimda@pts/1
nimda 329972 329971 00:00 5968 S -bash
root 330004 2 00:00 0 I [kworker/u257:2-events_power_efficient]
nimda 330005 329972 00:00 3584 S /bin/bash ./myps.sh
nimda 330006 330005 00:00 2208 S /bin/bash ./myps.sh
nimda 330007 330005 00:00 3456 S sort -n -k2
Все готово!
Description
Languages
Shell
100%