我有一個bash腳本,我想用OS X上的launchd plist文件運行。我遇到的問題是bash腳本包含sudo命令,它是阻止它運行。因此,例如,我的bash腳本是這樣的:在bash腳本中運行sudo命令並使用launchd運行它
#!/bin/bash
sudo /opt/local/bin/bindfs -u user1 /Library/WebServer/Documents/user1 /vhosts/user1/public_html
sudo /opt/local/bin/bindfs -u user2 /Library/WebServer/Documents/user2 /vhosts/user2/public_html
和我com.test.bindfs.plist文件看起來像這樣(與Lingon創建):
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>GroupName</key>
<string>admin</string>
<key>Label</key>
<string>com.jamespayne.bindfs</string>
<key>ProgramArguments</key>
<array>
<string>/usr/bin/bindfs.sh</string>
</array>
<key>RunAtLoad</key>
<true/>
</dict>
</plist>
我已檢查地看到,腳本在啓動後運行它並輸入密碼,但它不會在啓動時運行。該的launchd plist中正在運行,但它與下面的錯誤出現:
須藤:不存在TTY並沒有askpass程序指定
有人知道如何得到這個工作,或者爲什麼我會得到這個錯誤。謝謝。
感謝您的安全提示。移動。 – jpayne