ঠিক আছে, ওয়াইন প্রোগ্রামার হিসাবে আমি প্রায়শই পুরো জঘন্য জিনিসটি গুঁড়িয়ে দেব, তাই আমি আমার সুপার স্পেশাল কিলওয়াইন স্ক্রিপ্টটি ব্যবহার করি। এটি একটি কঠিন মৃত্যু ( wineserver -k
এটি করার সুন্দর উপায় এবং সর্বদা পছন্দসই)।
#!/bin/bash
wine_cellar="${HOME}/.local/share/wine"
if (($#)); then
if [[ -e "${wine_cellar}/$1" ]]; then
WINEPREFIX="${wine_cellar}/$1"
shift
elif [[ "${1:0:1}" != "-" ]]; then
echo "ERROR: Didn't understand argument '$1'?" >&2;
exit 1
fi
fi
if ((${#WINEPREFIX})); then
pids=$(
grep -l "WINEPREFIX=${WINEPREFIX}$" $(
ls -l /proc/*/exe 2>/dev/null |
grep -E 'wine(64)?-preloader|wineserver' |
perl -pe 's;^.*/proc/(\d+)/exe.*$;/proc/$1/environ;g;'
) 2> /dev/null |
perl -pe 's;^/proc/(\d+)/environ.*$;$1;g;'
)
else
pids=$(
ls -l /proc/*/exe 2>/dev/null |
grep -E 'wine(64)?-preloader|wineserver' |
perl -pe 's;^.*/proc/(\d+)/exe.*$;$1;g;'
)
fi
if ((${#pids})); then
set -x
kill $* $pids
fi
এটি ধরে নেওয়া হয় যে আপনি ওয়াইন উপসর্গগুলি অধীনে ~/.local/share/wine
। ব্যবহারের উদাহরণগুলি হ'ল:
killwine # Just kill all instances of wine
killwine -9 # Hard kill them all
killwine lotro # Only kill wine under ${HOME}/.local/share/wine/lotro
killwine -INT lotro # Same as above, but use SIGINT
WINEPREFIX=/tmp/crap killwine # Kill only the instance under /tmp/crap
sudo reboot # Pretend you're running windows.
আমি জানি না, তবে আমি মনে করি না যে আপনি প্রায়শই একটি সাধারণ বা এমনকি সাধারণ + স্টেজেজ রিলিজের সাথে মেমোরিতে ঝুলিয়ে রাখা বিভিন্ন প্রক্রিয়া (যা এই স্ক্রিপ্টটি যত্ন করে) শেষ করে দেবেন তবে আমি বেশ কিছু করেছি কারণ সার্ভার হ্যাকিং এবং ntdll।
সম্পাদনা: এই স্ক্রিপ্টটি কেবল একটি লিনাক্স-ভিত্তিক ওএসে কাজ করবে এবং ধরে নেবে যে প্রোক ফাইল সিস্টেমটি / প্রো, ইত্যাদি মাউন্ট করা আছে etc.