คำถามติดแท็ก plist

1
วิธีรับ Plist Plist เพื่อรันคำสั่ง bash ที่ซับซ้อน 1 บรรทัด
ฉันมีคำสั่ง bash ที่ค่อนข้างซับซ้อนซึ่งรวมไปถึงไพพ์บางส่วนและประโยค if-then-else ไม่พูดถึงการเรียกโปรแกรมระบบ (เช่นgrep) ที่มีพารามิเตอร์หลายตัว มีวิธีสร้าง plist ที่ launchd จะโหลดและรันคำสั่งที่ซับซ้อนนี้โดยตรงหรือไม่? (ตรงข้ามกับการที่ผู้อ้างอิงอ้างอิงไฟล์ bash script ที่มีคำสั่งที่ซับซ้อน) ขอบคุณ
13 macos  bash  launchd  plist 

1
การอ่านค่าจากพจนานุกรมที่ซ้อนกัน plist ในเชลล์สคริปต์
ฉันมีไฟล์ plist และฉันสนใจดึงค่าจากพจนานุกรมที่ซ้อนกันโดยใช้เชลล์สคริปต์ นี่คือโครงสร้างของไฟล์ plist ของฉัน: <dict> <key>Countries</key> <dict> <key>USA</key> <dict> <key>Capital</key> <string>Washington DC</string> <key>Continent</key> <string>North America</string> </dict> <key>Italy</key> <dict> <key>Capital</key> <string>Rome</string> <key>Continent</key> <string>Europe</string> </dict> </dict> </dict> ฉันสนใจดึงค่าที่กำหนดให้กับปุ่ม "เมืองหลวง" หากผู้ใช้ระบุชื่อประเทศ เช่นถ้าฉันรันคำสั่งต่อไปนี้ฉันจะได้รับข้อมูลที่สมบูรณ์ภายใต้พจนานุกรม "ประเทศ" defaults read "/Users/sameerp/Downloads/data" Countries 2>&1 ฉันได้รับผลลัพธ์ต่อไปนี้: { Italy = { Capital = Rome; Continent = Europe; }; USA …

2
ฉันจะย้ายแป้นพิมพ์ลัดทั้งหมดจากเครื่องหนึ่งไปยังเครื่องอื่นได้อย่างไร?
ฉันมีแป้นพิมพ์ลัดที่กำหนดเองจำนวนมากและจะเป็นการโยกย้าย Mac ฉันทดสอบการโยกย้ายผู้ช่วยและดูเหมือนจะไม่ได้รับสิ่งเหล่านี้ ฉันอ่านบางที่ที่เก็บไว้ในไฟล์ plist ของแต่ละแอปพลิเคชันใน ~/Library/Application Support โฟลเดอร์ แต่แม้หลังจากการคัดลอกโฟลเดอร์เหล่านี้บางส่วนบนทางลัดดูเหมือนจะไม่ติดตาม ฉันจะย้ายแป้นพิมพ์ลัดทั้งหมดไปยัง Mac เครื่องใหม่ได้อย่างไร

2
LaunchAgent ปฏิเสธที่จะเริ่มต้นด้วยข้อผิดพลาด“ launch_msg (): ซ็อกเก็ตไม่ได้เชื่อมต่อ”
ฉันสร้างแพ็คเกจ pkg เพื่อสร้าง LaunchAgent เพื่อเริ่ม daemon และในไฟล์สคริปต์หลังการติดตั้งใช้วิธีนี้เพื่อเริ่ม daemon: launchctl load -s /Library/LaunchAgent/file-name.plist มันทำงานได้ดี อย่างไรก็ตามมีปัญหา: ครั้งแรกที่ daemon เริ่มต้นในขณะที่ฆ่า daemon นี้และติดตั้ง LauchAgent อีกครั้งจะไม่สามารถเริ่มหรือฆ่า daemon ได้ มันจะพูดแบบนี้ใน terminal: file-name.plist: Already loaded หากฉันรีบูตหรือออกจากระบบก็สามารถเริ่มต้นได้อย่างถูกต้อง ฉันจะแก้ไขสิ่งนี้ได้อย่างไร การแก้ไขไฟล์สคริปต์หลังการติดตั้งเป็น: sudo -u $USER /bin/launchctl unload -S Aqua /Library/LauchAgent/file-name.plist sudo -u $USER /bin/launchctl load -S Aqua /Library/LauchAgent/file-name.plist ตามความคิดเห็นของ @ Daniel …
3 macos  plist 

2
เป็นไปได้หรือไม่ที่จะเรียกใช้แอปพลิเคชั่น Mac สองชุดด้วยไฟล์ plist ที่แตกต่างกัน?
ฉันพยายามเรียกใช้แอพสองเวอร์ชันMessagesบน OSX ด้วยบัญชีผู้ใช้ที่ต่างกันสองบัญชี ฉันสามารถคัดลอก / วาง.appไฟล์และเรียกใช้แอปเป็นสองกระบวนการที่แตกต่างกันได้อย่างง่ายดายแต่เนื่องจากพวกเขาใช้ plist และฐานข้อมูลเดียวกันพวกเขาจึงมีบัญชี / ข้อมูลเดียวกัน (นี่คือรายการไฟล์ที่ดีที่มันสร้างขึ้น: https: // apple stackexchange.com/a/107120/62420 ) เป็นไปได้หรือไม่ที่จะแก้ไขที่เก็บข้อมูลของแอพอย่างน้อยหนึ่งแอพ ฉันสามารถเรียกใช้แอพในลักษณะที่เมื่อมันร้องขอการเข้าถึงไฟล์ฉันสามารถแก้ไขตำแหน่งไฟล์จริงของไฟล์ที่มันร้องขอได้หรือไม่? ตัวอย่างเช่นหากคำขอ~/Library/Preferences/com.apple.imservice.iMessage.plistฉันสามารถเปลี่ยนเส้นทางนั้นไป~/Library/Preferences/com.apple.imservice.iMessage2.plistใช้ชื่อกระบวนการหรือรหัสได้หรือไม่

0
การจัดวางรูปภาพบนเดสก์ท็อป
ฉันสร้างแอพ Automator ซึ่งเปลี่ยนรูปภาพเดสก์ท็อปเป็นไฟล์รูปภาพอะไรก็ตามที่คุณวางบนไอคอน มันใช้งานได้อย่างสมบูรณ์แบบจนกระทั่ง Snow Leopard ตอนนี้การจัดวางภาพจะรีเซ็ตเป็นเต็มหน้าจอเสมอโดยไม่คำนึงถึงสิ่งที่เคยตั้งไว้ มีวิธีในการเปลี่ยนการตั้งค่าเริ่มต้นของ desktop.plist แม่แบบ? (ฉันใช้ "กึ่งกลาง" เพื่อจุดประสงค์ของฉัน)? ถ้าไม่ฉันสามารถใช้ Applescript ที่จะรีเซ็ต desktop.plist ไปที่ "กึ่งกลาง" จากนั้นรีเฟรชเดสก์ทอปไปเป็นการตั้งค่าใหม่
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.