ฉันจะแสดงกล่องโต้ตอบ osascript ด้วย crontab ได้อย่างไร ฉันสามารถดำเนินการ """osascript -e 'display dialog "displaying content" ' """
ด้วย python os.system
ในเทอร์มินัลได้ และแถบโต้ตอบจะปรากฏขึ้น ซึ่งหมายความว่า os.system
ดำเนินการ osascript command
อย่างถูกต้อง และฉันสามารถรันคำสั่ง crontab เช่น 32 10 * * * mkdir /path
เพื่อสร้างโฟลเดอร์เวลา 10:32 น. ซึ่งหมายความว่า crontab ก็ทำงานได้ดีเช่นกัน อย่างไรก็ตาม เมื่อฉันรัน """osascript -e 'display dialog "displaying content" ' """
ด้วย crontab ก็ไม่มีอะไรปรากฏขึ้น ดูเหมือนว่ามีบางอย่างขัดขวางไม่ให้แถบข้อความแสดงบนหน้าจอของฉัน ฉันอยากรู้ว่าเกิดอะไรขึ้น
ไม่สามารถแสดงกล่องโต้ตอบ osascript ด้วย crontab
คำตอบ (2)
ด้วยเหตุผลบางอย่างสิ่งนี้ได้ผลสำหรับฉันภายใต้ Big Sur (แต่ไม่ได้ให้เส้นทางแบบเต็มไปยัง osascript เท่านั้น):
* * * * * * /usr/bin/bash; osascript -e 'display dialog "Kilroy was here!"'
person
P-D
schedule
18.12.2020
ปรากฎว่าคำสั่งนำหน้าด้วย /bin/zsh; ทำงานได้ดีและแม้แต่อัฒภาคเท่านั้น ;
- person P-D; 21.12.2020
* * * * * * ;osascript -e 'display dialog "Kilroy was here!"'
ได้ผล!
- person P-D; 21.12.2020
หมายเหตุสุดท้าย (?): ดูเหมือนว่า crontab บน Mac OS จะใช้ 6 'ฟิลด์' เท่านั้น (โดยไม่มีปี) อันที่จริงมันทำงานในวิธีที่ง่ายที่สุดเท่าที่จะเป็นไปได้และฉันก็ถูกหลอก (ความคิดเห็นถัดไปเพื่อความชัดเจน):
- person P-D; 27.12.2020
เครื่องหมายคำพูดเพิ่มเติมนั้นไม่จำเป็นหากใช้ crontab มันควรจะทำงานโดยไม่มีเครื่องหมายคำพูด คุณควรจะสามารถยืนยันสิ่งนี้ได้ด้วยการทำงานในเทอร์มินัลที่ไม่มี Python หากรันด้วยเครื่องหมายคำพูดในเทอร์มินัล จะเกิดข้อผิดพลาดขึ้น bash: osascript -e 'display dialog displaying: command not found
ลองเพิ่มบรรทัดนี้ในคำสั่ง crontab ของคุณ:
osascript -e 'display dialog "displaying content"'
person
Matts
schedule
17.02.2019
ใช่ ฉันสามารถดำเนินการ link ตัวเอียง ตัวหนา
osascript -e 'display dialog "displaying content"'
ได้โดยตรงในเทอร์มินัลและ มันทำงานได้ดี เครื่องหมายคำพูดเพิ่มเติมมีไว้สำหรับ python เพื่อรัน AppleScript โค้ด python คือ:ลิงก์ ตัวเอียง ตัวหนา import os def notify(): os.system(""" osascript -e 'display dialog "displaying content" ' """) notify()
- person Zhiliang Lyu; 17.02.2019
หากฉันรันโปรแกรม python ข้างต้นในเทอร์มินัลหรือ Pycharm ทุกอย่างเรียบร้อยดี แต่หากฉันรันโปรแกรมข้างต้นใน crontab แถบโต้ตอบจะไม่แสดงขึ้นมา
- person Zhiliang Lyu; 17.02.2019
คุณพูดถูก applescript จะไม่ทำงานจาก cron ในตอนนี้ คุณควรตรวจสอบคำตอบนี้
- person Matts; 17.02.2019