Мне нужен скрипт bash для подсчета процессов пользователей SPECIFI C или всех пользователей. Мы можем ввести 0, 1 или более аргументов. Например,
./myScript.sh root deamon
должно выполняться следующим образом:
root 92
deamon 8
2 users has total processes: 100
Если в качестве параметра не указано ничего, тогда должны быть перечислены все пользователи:
uuidd 1
awkd 2
daemon 1
root 210
kklmn 6
5 users has total processes: 220
Что я до сих пор есть скрипт для всех пользователей, и он прекрасно работает (с некоторыми предупреждениями). Мне просто нужна часть, где вводятся аргументы (какой-то фильтр результатов). Вот скрипт для всех пользователей:
cntp = 0 #process counter
cntu = 0 #user counter
ps aux |
awk 'NR>1{tot[$1]++; cntp++}
END{for(id in tot){printf "%s\t%4d\n",id,tot[id]; cntu++}
printf "%4d users has total processes:%4d\n", cntu, cntp}'