ชื่อกล่าวมันทั้งหมด pgrep Xvfb
ครึ่งหนึ่งของเคล็ดลับเท่านั้น มันจะไม่บอกหมายเลขที่แสดง
ชื่อกล่าวมันทั้งหมด pgrep Xvfb
ครึ่งหนึ่งของเคล็ดลับเท่านั้น มันจะไม่บอกหมายเลขที่แสดง
คำตอบ:
ฉันไม่แน่ใจว่าคุณพยายามทำอะไรให้สำเร็จ แต่คุณสามารถตรวจสอบว่า X Display มีให้ใช้งานหรือไม่โดยเรียกใช้ "x display info":
xdpyinfo -display :0 >/dev/null 2>&1 && echo "In use" || echo "Free"
หมายเหตุ: หากคุณไม่สามารถเข้าถึงหน้าจอได้ระบบจะรายงานว่า "ฟรี" เช่นกัน อีกวิธีคือตรวจสอบ/tmp/.X0-lock
ว่ามีไฟล์ PID ของเซิร์ฟเวอร์ X อยู่หรือไม่
แทนที่จะแสดงคำสั่งวิธีที่น่าเชื่อถือมากขึ้นคือการตรวจสอบกระบวนการที่ตรงกับไบนารี:
pids=$(pidof /usr/bin/Xvfb)
if [ -n "$pids" ]; then
processes="$(ps --format command --no-headers -ww --pid $pids)"
else
echo "Not running"
fi
ที่มา: https://github.com/Bumblebee-Project/Bumblebee/blob/master/install-files/common-functions#L112
display=":${processes##*:}";display="${%% *}"
ที่จะได้รับจำนวนการแสดงผล (สมมติว่าก็ให้มีคำสั่งที่จะทำเพื่อXorg
อย่างน้อย)
:0
ตรวจสอบง่าย ๆ:0
ก็เพียงพอสำหรับความต้องการของฉัน ขอบคุณอีกครั้ง!
xdpyinfo
เคล็ดลับสำหรับฉันไม่ขอบคุณ! Btw ฉันต้องการตั้งค่าตัวแปร DISPLAY env ตาม Xvfb ที่ทำงานบน: 0