[英]Writing script to find all PID of processes of user
我真的很想用ps -aux
來得到這個。 所以我寫了腳本:
#!/bin/bash
if [ $# -lt 1 ]; then
echo -n "No arguments were written"
read uid
else
uid=$1
fi
procesy=`ps -aux | awk '{if ($1=="$uid") print$2}'`
echo $procesy
為什么它不起作用? 當我寫./script root
時,除了空行外,我什么都沒得到。
這將滿足您的需求:
pgrep -U $1
在腳本中,您在awk
內使用shell變量時遇到問題。 使用awk
的正確方法應該是:
#!/bin/bash
if [ $# -lt 1 ]; then
echo -n "No arguments were written"
read user
else
user=$1
fi
procesy=`ps aux | awk -v usr=$user '{if ($1==usr) print$2}'`
echo $procesy
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.