我目前有一个AppleScript,它将包含长列表的硬编码纯文本文件读入变量,然后将其作为段落读入另一个变量。该脚本非常适合我的目的。这基本上就是我所使用的:
set fileHandler to (read POSIX file "/path/to/my/file.txt")
set newList to paragraphs of fileHandler
repeat with i in newList
# do stuff
end repeat
省略的脚本打开Safari位置,使用i
作为该页面上的变量调用JavaScript,将结果写入新的纯文本文件,关闭Safari窗口,然后重复。它一直持续到列表末尾,然后在repeat
之外运行do shell script
,稍微清理新文本文件。
麻烦的是,每次我想使用不同的列表运行脚本时,我都必须打开硬编码文件并粘贴到列表中。我只是将任何.txt文件放到包含当前脚本的Automator应用程序上。
我已尝试使用"合并文本文件"而且我觉得我非常接近,但我不能按照我喜欢的方式传递.txt文件的内容。除非我做错了,否则我无法通过它。并且"获取变量的值" /"设置变量的值"添加额外的"文字"项目到我的列表,我不明白。
理想情况下,我想做这样的事情:
set fileHandler to (read POSIX file arg) -- the dropped text file
set newList to paragraphs of fileHandler
repeat with i in newList
# do stuff
end repeat
...但不幸的是,它并没有这样做。
如果我能提供帮助,我真的不会重新发明一个全新的剧本。任何建议都会很棒。感谢。
答案 0 :(得分:1)
实际上不需要Automator。将此代码保存在脚本编辑器中作为应用程序(包)并将文件拖放到其上。
on open theFiles
repeat with aFile in theFiles
set newList to paragraphs of (read aFile)
repeat with i in newList
# do stuff
end repeat
end repeat
end open