Skip to content

Instantly share code, notes, and snippets.

@przemub

przemub/dość.bash

Last active Feb 4, 2021
Embed
What would you like to do?
#!/bin/bash
set -eu
PYCHARM_PROJECT_NAME="work"
DOCKER_COMPOSE_FILE="/home/prem/work/docker-compose.yml"
kill_pid_and_wait () {
PID=$1
kill $PID
# Sprawdź, czy program wciąż jest uruchomiony.
# Jeśli po pięciu sekundach (sprawdzeniach) wciąż jest,
# pokaż błąd.
local watchdog=0
while kill -0 $PID 2>/dev/null; do
sleep 0.1
watchdog=$((watchdog+1))
if [ $watchdog -eq 50 ]
then
echo Nie udało się urżnąć procesu $1.
echo Zrób to sam.
return
fi
done
}
# Zarzynanie mejla pracowniczego.
THUNDERBIRD_PID=$(pgrep -a thunderbird | grep Work | cut -f1 -d" ")
if [ $THUNDERBIRD_PID ]
then
echo Żadnego „tylko jeszcze jeden mejl”. Nie ma.
kill_pid_and_wait $THUNDERBIRD_PID
fi
# Zarzynanie Ripcorda, klienta Slacka.
RIPCORD_PID=$(pgrep -a AppRun | grep ripcord | cut -f1 -d" ")
if [ $RIPCORD_PID ]
then
echo Też Ci się wydaje, że przez Slacka zawsze musimy być dostępni?
echo Wypierdalać z tym.
kill_pid_and_wait $RIPCORD_PID
fi
# Zamknięcie okien PyCharma, w których otwarty jest projekt pracowniczy.
PYCHARM_WINDOW_ID=$(wmctrl -l | grep $PYCHARM_PROJECT_NAME | cut -f1 -d" ")
if [ $PYCHARM_WINDOW_ID ]
then
echo Czas zakodzić coś swojego.
echo Zamykam okno IDE od projektu z roboty.
wmctrl -ic $PYCHARM_WINDOW_ID
fi
if docker-compose -f $DOCKER_COMPOSE_FILE ps | grep Up
then
echo Zamykam spasłe firmowe kontenery.
docker-compose -f $DOCKER_COMPOSE_FILE stop
fi
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment