term=0
file=input
for number in `cat "$file"`; do
term="${term}+${number}"
done
total="$(echo "$term" | bc -l)"
average="$(echo "${total}/10" | bc -l)"
average="$(echo "$average" | sed -e 's/^\(.*\..*[^0]\)0*/\1/' -e p)"
echo "Total: ${total}"
echo "Average: ${average}"
У меня нет доступа к машине BSD для проверки, но ваша команда ps
должна работать как объявленная. В любом случае, в качестве грязного взлома, вы всегда можете просто разобрать вывод полных ps
(где NNN
- это PID, который вам нужен):
ps aux | awk -v OFS="\t" '$2=="NNN"'
Или, чтобы сохранить формат вывода идентичным формату ps
:
ps aux | grep -i '^[a-z ]*NNN '
Вам, возможно, придется немного подкорректировать опции ps
, так как в BSD они отличаются друг от друга. Просто используйте любую комбинацию, которая распечатает все процессы.