#!/bin/bash
# Skrypt watch_and_nice obserwujący proces o zadanej nazwie
# i zmieniający jego priorytet.

if [ $# -ne 2 ] ; then
  echo "Użycie: $(basename $0) priorytet nazwa_procesu" >&2
  exit 1
fi

pid="$(renicename -p "$2")"

if [ "$pid" == "" ] ; then
  echo "Brak procesu o nazwie $2."
  exit 1
fi

if [ ! -z "$(echo $pid | sed 's/[0-9]*//g')" ] ; then
  echo "Nazwa $2 nie określa jednoznacznie procesu." >&2
  exit 1
fi

currentnice="$(ps -lp $pid | tail -1 | awk '{print $6}')"

if [ $1 -gt $currentnice ] ; then
  echo "Nadanie procesowi $2 priorytetu $1."
  renice $1 $pid
fi

exit 0
