1
รับชื่อผู้ใช้ที่ใช้งานอยู่ในสคริปต์บน Mac OS
ฉันมีสคริปต์ Perl (สคริปต์นี้เป็นที่แน่นอน) ที่บันทึกกิจกรรมของผู้ใช้ตามเวลาว่างบนระบบ MacOS X Snow Leopard อย่างไรก็ตามเมื่อเปิดใช้งานการสลับผู้ใช้อย่างเร็วผู้ใช้มากกว่าหนึ่งรายอาจเข้าสู่ระบบในเวลาเดียวกัน ฉันต้องการให้สคริปต์ดูคอมพิวเตอร์ว่า 'ไม่ได้ใช้งาน' หากผู้ใช้รายอื่นทำงานอยู่ (เช่นใช้ GUI) ผ่านการสลับผู้ใช้อย่างเร็ว มีหลายวิธีที่จะคิดออกเมื่อผู้ใช้เข้าสู่ระบบการค้นหาเมื่อผู้ใช้ "สลับ" ครั้งสุดท้ายดูเหมือนยากขึ้น วิธีแก้ปัญหาของฉันคือการดูที่/var/log/secure.logบันทึกเหตุการณ์การสลับผู้ใช้อย่างรวดเร็ว: tail -200 /var/log/secure.log | grep "User info context values set" | tail -1 อย่างไรก็ตามสำหรับผู้ใช้ที่เรียกใช้สคริปต์ Perl ที่ไม่ใช่ผู้ดูแลระบบsecure.logจะไม่สามารถอ่านได้ มีวิธีอื่นในการค้นหาผู้ใช้ที่เข้าสู่ระบบอยู่ในขณะนี้หรือเหตุการณ์ Fast User Switching ครั้งสุดท้ายคืออะไร ioregแน่นอนว่าปัญหาที่เกิดขึ้นอาจจะโกงถ้าผมมีวิธีการในการหาเวลาว่างสำหรับผู้ใช้ที่ใช้สคริปต์เท่านั้นไม่ใช่เวลาว่างทั้งหมดของคอมพิวเตอร์ฉันกำลังได้รับจาก ดังนั้นฉันเปิดรับข้อเสนอแนะที่นั่นเช่นกัน ขอบคุณ!