我正在编写一个引导脚本来自动化新开发者的Mac计算机的某些设置。到目前为止,我已经能够使用brew cask
从命令行安装SP:
brew cask install sequel-pro
然后是否可以从命令行创建SP“收藏夹”,例如,新开发人员已经可以在指尖获得到本地Vagrant框的连接参数?
最佳答案
Sequel Pro将其收藏夹存储在~/Library/Application Support/Sequel Pro/Data/Favorites.plist
中,密码存储在钥匙串中。所以我必须做两件事:
将正确的数据(基本上为XML格式)写入该文件。
为我的数据库密码创建一个钥匙串条目。
通过查看当前Favorites.plist
的内容,我得出了以下基本启动文件:
<?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>Favorites Root</key>
<dict>
<key>Children</key>
<array>
<dict>
<key>database</key>
<string>my_db_name</string>
<key>host</key>
<string>127.0.0.1</string>
<key>id</key>
<integer>-4414284772604805500</integer>
<key>name</key>
<string>homestead</string>
<key>port</key>
<string>33060</string>
<key>socket</key>
<string></string>
<key>sshHost</key>
<string></string>
<key>sshKeyLocation</key>
<string></string>
<key>sshKeyLocationEnabled</key>
<integer>0</integer>
<key>sshPort</key>
<string></string>
<key>sshUser</key>
<string></string>
<key>sslCACertFileLocation</key>
<string></string>
<key>sslCACertFileLocationEnabled</key>
<integer>0</integer>
<key>sslCertificateFileLocation</key>
<string></string>
<key>sslCertificateFileLocationEnabled</key>
<integer>0</integer>
<key>sslKeyFileLocation</key>
<string></string>
<key>sslKeyFileLocationEnabled</key>
<integer>0</integer>
<key>type</key>
<integer>0</integer>
<key>useSSL</key>
<integer>0</integer>
<key>user</key>
<string>homestead</string>
</dict>
</array>
<key>IsExpanded</key>
<true/>
<key>Name</key>
<string>FAVORITES</string>
</dict>
</dict>
</plist>
我将其另存为
Favorites.plist
与我的引导脚本相同的目录(如原始问题所述),并将以下3行添加到脚本中:mkdir -p ~/Library/Application\ Support/Sequel\ Pro/Data/
cp -f Favorites.plist ~/Library/Application\ Support/Sequel\ Pro/Data/
security add-generic-password -U -T "/Applications/Sequel Pro.app" -s "Sequel Pro : homestead (-4414284772604805500)" -a homestead@127.0.0.1/my_db_name -w secret
第一行确保目录路径存在(我还没有在全新安装的SP中尝试过该路径,所以我不知道整个路径是否存在)。
第二行将上面的模板复制到正确的位置。
第三行将数据库密码(“秘密”)添加到我的钥匙串中。
请注意,此命令中的不同参数如何与
Favorites.plist
中的元素(名称,数据库,ID等)对齐See the doc for OS X's
security
command.中提琴!
关于mysql - 从命令行创建Sequel Pro“收藏夹”吗?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/27737664/