Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/csharp-4.0/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
Applescript 如何调整此代码以从特定Itunes播放列表中删除音乐_Applescript_Itunes_Playlist - Fatal编程技术网

Applescript 如何调整此代码以从特定Itunes播放列表中删除音乐

Applescript 如何调整此代码以从特定Itunes播放列表中删除音乐,applescript,itunes,playlist,Applescript,Itunes,Playlist,你好,亲爱的社区 任何人都知道我如何修改上面的代码,使一首曲目从给定的播放列表中删除。 但不是从硬盘上删除文件(就像现在一样,带有“缺失值”),而是如果文件在硬盘上的位置发生变化,它将被删除。 我想到了一些命令,比如t位置的“更改值”,但遗憾的是并没有起作用 我希望我说得够清楚了。如果没有,我可以试着做得更好:) 谢谢你的帮助 如果要删除自某个日期以来其文件已移动到另一个目录的播放列表项目,可以执行以下操作: 告诉应用程序“iTunes” 重复t in(获取播放列表“播放列表名称”的曲目) 执行

你好,亲爱的社区

任何人都知道我如何修改上面的代码,使一首曲目从给定的播放列表中删除。 但不是从硬盘上删除文件(就像现在一样,带有“缺失值”),而是如果文件在硬盘上的位置发生变化,它将被删除。 我想到了一些命令,比如t位置的“更改值”,但遗憾的是并没有起作用

我希望我说得够清楚了。如果没有,我可以试着做得更好:)

谢谢你的帮助

如果要删除自某个日期以来其文件已移动到另一个目录的播放列表项目,可以执行以下操作:

告诉应用程序“iTunes”
重复t in(获取播放列表“播放列表名称”的曲目)
执行shell脚本“mdls-rnkMDItemDateAdded”&引用形式为(POSIX路径为(获取t的位置))&“cut-d'-f1”
如果结果>“2018-01-01”,则删除t
结束重复
结束语
上面的脚本只从指定的播放列表中删除每个曲目,而不是从整个iTunes库中删除

“添加日期”是文件上次移动或首次索引的日期,因此上面的脚本也适用于在指定日期之后由Spotlight创建或首次索引的文件
mdimport-A
(列出所有元数据属性)将
kMDItemDateAdded
描述为上次移动此项的
日期

$mdimport-A |添加了grep
“KmdeteMDateAdded”“添加日期”“上次移动此项的日期”“添加日期,添加日期”
如果要删除播放列表中文件不在指定目录中的项目,可以使用如下脚本:

告诉应用程序“iTunes”
重复t in(获取播放列表“播放列表名称”的曲目)
t的位置
告诉应用程序“Finder”到的POSIX路径(文件结果文件夹作为别名)
如果结果不是“/Users/username/folder”,则删除t
结束重复
结束语

非常感谢,亲爱的!
tell application "iTunes"
    repeat with t in (get file tracks of library playlist 1)
        if location of t is missing value then delete t

    end repeat


end tell