Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/variables/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Variables 为列表中的每个项目应用脚本重复命令。作为变量添加到命令中的每一行_Variables_Applescript_Repeat - Fatal编程技术网

Variables 为列表中的每个项目应用脚本重复命令。作为变量添加到命令中的每一行

Variables 为列表中的每个项目应用脚本重复命令。作为变量添加到命令中的每一行,variables,applescript,repeat,Variables,Applescript,Repeat,我有一个电影标题列表,存储在AppleScript中的变量movie\u titles中 {"Beautiful Girl 2014 The Aerialist 2020 Yvonne Orji Momma I Made It 2020 Dead Stop 2011 "} 我需要为列表中的每个标题运行一个命令。打开一个URL,其中列表的每个标题都是该URL的一部分。结果是在默认浏览器中打开的列表中的每个项目都有一个选项卡 repeat with i in movie_tit

我有一个电影标题列表,存储在AppleScript中的变量
movie\u titles

{"Beautiful Girl 2014
The Aerialist 2020
Yvonne Orji Momma I Made It 2020
Dead Stop 2011
"}
我需要为列表中的每个标题运行一个命令。打开一个URL,其中列表的每个标题都是该URL的一部分。结果是在默认浏览器中打开的列表中的每个项目都有一个选项卡

repeat with i in movie_titles
    do shell script "open 'http://www.imdb.com/find?ref_=nv_sr_fn&q= " & movie_titles & "&s=tt&ttype=ft'"
    
end repeat
这适用于一个列表,但它会将多个列表的每一行添加到URL中。我意识到,我需要第二个变量来连续获取每一行并将其添加到每个repeat语句中,但我不确定如何将其添加到repeat语句中


我想我找不到一个好的例子,因为我不确定使用哪个搜索词/短语。如果您能提供一个答案和一个简短的解释,我将不胜感激。

您需要在行尾分解输入字符串以创建列表项。AppleScript文本对象有一个
段落
元素,该元素使用return、linefeed或return/linefeed作为分隔符,因此您可以执行以下操作:

set movieTitles to "Beautiful Girl 2014
The Aerialist 2020
Yvonne Orji Momma I Made It 2020
Dead Stop 2011"

repeat with anItem in paragraphs of movieTitles
   if contents of anItem is not "" then -- skip blank lines
       do shell script "open 'http://www.imdb.com/find?ref_=nv_sr_fn&q=" & anItem & "&s=tt&ttype=ft'"
    end if
end repeat

没有任何连接,您的“列表”只是单个字符串项-您如何尝试获取这些项(对话框、文件等)?确定。我使用了不正确的术语。我需要在重复循环中单独使用该列表中的每个项。就目前而言,它没有这样做。您的列表只有一项(字符串)-如何获取文本?字符串用逗号分隔。这些值不是用逗号分隔的,这是一个列表。是的,您的单个字符串在一个列表中。您是想拆分一些输入字符串,还是单个项目应该已经是一个列表?谢谢。出于某种原因,我不得不从第一行末尾删除
as list
,我将剪贴板项目保存到一个变量中,以便
段落
工作。啊,这更有意义,这就是为什么我问你从哪里获取文本的原因。您只是将整个剪贴板字符串强制为单个列表项。@John最好使用
打开位置
——这是一个内置的AppleScript函数,而不是
执行shell脚本
,这最终是一系列非常迂回的操作,最终发送了与open location完全相同的
GURL
Apple事件。您可以将
do shell脚本
行替换为更简单的
打开位置“http://www.imdb.com/find?s=tt&ttype=ft&q=“&anItem
@red\u如果您愿意的话,请提出另一个问题。如果我想重复同样的列表,并分开标题和每行的日期,我会怎么做呢。我需要将年份和日期分配给不同的变量<代码>在电影标题的段落中用y重复将电影标题设置为y的文本1到-6将电影年份设置为y的文本4到-1结束重复我只得到列表的最后一行{“死站”,“2015”}@John,您只需要按照shell脚本所需的顺序连接字符串和变量。您的结果似乎表明您正在创建另一个列表。