#!/bin/bash # Stop all Cygwin services. for service in $(cygrunsrv --list 2>/dev/null); do echo Stopping the $service service. cygrunsrv --stop $service &>/dev/null done # Stop all Cygwin processes except this process and its ancestors. echo Stopping Cygwin processes. plist=$(pstree -ps $$ | perl -ne "s/.*?\).*?\(/\(m\// && s/\).*?\(/\/ || m\//g && s/\).*?/\/\)/ && print"); /bin/kill -9 $(ps -e | perl -ne "s/.*?(\d+).*/\1/ && ! $plist && print") &>/dev/null