AppleScript,从文件读取/写入数据(脚本的配置文件)

AppleScript,从文件读取/写入数据(脚本的配置文件),applescript,Applescript,我正在创建一个引导脚本,它将在几个不同位置的多台计算机上运行。 此脚本将同步字体、连接到SMB共享等 不同的位置使用不同的IP、文件夹结构等进行操作,所以我想要我的脚本 要读取和写入自定义配置文件,我将存储在每个位置 如何从外部文件读取和写入变量 我需要读写的一些变量的例子 Raidfolder: Volumes/QNAP-RAID/FILES #POSIX path RaidSYM: ~/Desktop/RAID Mount: user:password@192.168.0.10 有没有一种

我正在创建一个引导脚本,它将在几个不同位置的多台计算机上运行。 此脚本将同步字体、连接到SMB共享等

不同的位置使用不同的IP、文件夹结构等进行操作,所以我想要我的脚本 要读取和写入自定义配置文件,我将存储在每个位置

如何从外部文件读取和写入变量

我需要读写的一些变量的例子

Raidfolder: Volumes/QNAP-RAID/FILES #POSIX path
RaidSYM: ~/Desktop/RAID
Mount: user:password@192.168.0.10
有没有一种聪明的方法可以从“Raidfolder”中读取信息,并将其用作脚本中的变量。 我还想存储一些用户选择的文件夹,脚本将在第一次运行时请求这些文件夹

choose folder with prompt "Please choose a folder:" default location alias PrTemplates
我做到了,管理了对.sctp的写入属性,但是从POSIX路径得到了一个unicode文本错误, 另外,我更希望配置为明文格式,这样就可以在texteditor中进行编辑

感谢您的帮助。谢谢约翰·艾弗

AppleScript,从文件读取/写入数据(脚本的配置文件)

看看,这是我要走的路


下面的示例AppleScript代码在macOS Catalina下的脚本编辑器中进行了测试,没有出现任何问题,并演示了如何创建~/Desktop/example.plist文件并将其读回。两行
log…
仅用于在回复窗格中显示变量在从~/Desktop/Example.plist文件读回之前已设置为不同的值

将RaidFolder设置为“/Volumes/QNAP-RAID/FILES”
将RaidSYM设置为“~/Desktop/RAID”
将装载设置为“用户:password@192.168.0.10"
告诉应用程序“系统事件”
将“功能”设置为:
使用属性{kind:record}创建新的属性列表项
将PropertyList文件路径设置为“~/Desktop/Example.plist”
将PropertyList文件设置为——
使用属性创建新的属性列表文件
{内容:theParentDictionary,名称:thePropertyListFilePath}
告诉PropertyList文件的属性列表项
在属性末尾创建新的属性列表项
{种类:字符串,名称:“RaidFolder”,值:RaidFolder}
在属性末尾创建新的属性列表项
{kind:string,name:“RaidSYM”,value:RaidSYM}
在属性末尾创建新的属性列表项
{kind:string,name:“Mount”,value:Mount}
结束语
结束语
将RaidFolder设置为缺少值
将RaidSYM设置为缺少值
将Mount设置为缺少值
日志RaidFolder&linefeed&RaidSYM&linefeed&Mount
告诉应用程序“系统事件”
告诉属性列表文件PropertyListFilePath
将RaidFolder设置为属性列表项“RaidFolder”的值
将RaidSYM设置为属性列表项“RaidSYM”的值
将装载设置为属性列表项“装载”的值
结束语
结束语
日志RaidFolder&linefeed&RaidSYM&linefeed&Mount
示例XML Plist文件显示了创建为~/example.Plist文件的内容。它是一个结构化的ACSII文本文件,可以在任何文本编辑器中编辑


攀登
用户:password@192.168.0.10
文件夹
/卷/QNAP-RAID/文件
RaidSYM
~/Desktop/RAID

如果您想使用普通的ACSII文本文件,而不是像XML Plist文件这样的结构化文件,请查看:


注意事项:

  • 回复:“装载:用户:password@192.168.0.10“--将用户名和密码存储在纯文本文件中并非明智之举

这太完美了!这很有帮助!简单而完美。非常感谢。现在我还了解了日志功能handy。