Chybka. Break jsem opravil na continue. Tak ještě jednou:
#!/bin/bash
# Po probuzení PC s grafickou kartou GeForce může být porušený obraz v místě s použitými grafickými efekty.
PATH=/sbin:/usr/sbin:/bin:/usr/bin
if [ "$#" -lt 1 ]; then
exit 1
fi
if [ "${1}" != "post" ]; then
exit 1
fi
LINES_WITH_DISPLAY="`who -a | grep '? :'`"
USER_LIST="`ps aux | grep '[0123456789]\{1,2\}:[0123456789]\{2\} *[0123456789]\{1,2\}:[0123456789]\{2\} kwin' | grep -v grep | awk '{ print $1 }'`"
USER_COUNT="`echo $USER_LIST | awk '{ print NF }'`"
USER_NUMBER="1"
while [ "$USER_NUMBER" -le "$USER_COUNT" ]; do
AWK_CMD="{ print \$${USER_NUMBER} }"
USER_NAME="`echo $USER_LIST | awk \"$AWK_CMD\"`"
if [ "$USER_NAME" == "root" ]; then
continue
fi
DISPLAY="`echo \"$LINES_WITH_DISPLAY\" | grep \"$USER_NAME\" | awk '{ print $3 }'`" # username ? :display-number ...
runuser -l "$USER_NAME" -c "env DISPLAY=${DISPLAY} kwin --replace &"
echo "runuser -l \"$USER_NAME\" -c \"env DISPLAY=${DISPLAY} kwin --replace &\""
USER_NUMBER=$(($USER_NUMBER+1))
done