Code test

stevehe 2020年10月08日 202次浏览
#/bin/bash
#keep program path output to sort by program path
#psList=$(ps w|grep pri|awk '{print $(NF-5)" "$NF}'|sort -k 1|grep -E '^/')
#echo $psList
#echo $psList|awk '{print $NF}'|xargs -n 1 grep -E '^(listen-address|forward-socks)'
#ps ww|grep pri|awk '{print $(NF-5)" "$NF}'|sort -k 1 -d|grep -E '^/'|awk -F ' ' '{print $NF}'|xargs -n 1 g
confs=$(ps ww|grep pri|awk '{print $(NF-5)" "$NF}'|sort -k 1 -d|grep -E '^/'|awk -F ' ' '{print $NF}')
for conf in $confs;
do
#echo -e "==========================================="
echo "Configure File: $conf"
forwardinfo=$(grep -E '^(listen-address|forward-socks)' $conf)
echo "$forwardinfo"
forward_port=$(echo "$forwardinfo"|grep -iE 'forward.*:'|awk -F ':' '{print $NF}'|sed -r 's/(\s|\.)//ig')
forward_pid=$(netstat -ntlp|grep ":${forward_port}"|awk '{print $NF}'|cut -d '/' -f 1)
echo -e "Backend Command: \c"
ps ww|grep -E '^[ ]*'${forward_pid}|sed -r 's|^[^/]+||'
echo -e "\n"
done