applescript:使用Finder移动文件时避免声音

时间:2018-01-28 09:36:05

标签: audio applescript move

我正在尝试处理Applescript中的一些文件。这包括搬家 每个文件到工作目录进行处理

我的脚本执行时

tell application "Finder"
    move  file to workdir
end tell

它总是会发出声音(就像使用finder GUI dos移动文件一样) 我怎么能阻止这个?该脚本可能会持续运行很长时间,并且不断地从这个脚本中叮叮当当会令人不安。我无法完全关闭声音,因为其他事情可能需要提醒我

2 个答案:

答案 0 :(得分:0)

由于您在OP中明确声明“我无法完全关闭声音,因为其他事情可能需要提醒我”,我建议您使用move 命令来自系统事件的磁盘 - 文件夹 - 文件套件,因为它不会使用此方法发出任何声音。

  

移动 v :将磁盘项移至新位置。

  移动磁盘项:要移动的磁盘项   to location specifier:磁盘项的新位置。
  →磁盘项


示例:

set thisItem to "/path/to/disk item"
set thisFolder to "/path/to/folder"

tell application "System Events"
    move disk item thisItem to thisFolder
end tell

答案 1 :(得分:-1)

您可以通过名为" Volume Mount.aif"的系统文件禁用声音。执行此操作的非破坏性方法是将文件移动到其他位置。移动文件需要root权限。

要执行此命令,您还需要禁用系统完整性保护: https://developer.apple.com/library/content/documentation/Security/Conceptual/System_Integrity_Protection_Guide/ConfiguringSystemIntegrityProtection/ConfiguringSystemIntegrityProtection.html

您可以通过在终端中键入以下命令来移动它:

sudo mv /System/Library/Components/CoreAudio.component/Contents/SharedSupport/SystemSounds/system/Volume\ Mount.aif ~/Desktop/

将其移回:

sudo mv ~/Desktop/Volume\ Mount.aif /System/Library/Components/CoreAudio.component/Contents/SharedSupport/SystemSounds/system/

声音重新启动需要重启。