在 MacOS 中,是否有任何热键可以将文件夹在父文件夹和子文件夹中上下移动?
例如在这个简单的例子中,我想将文件 1234.pdf 移动到文件夹 A,这样子文件夹 A 就为空。理想情况下,我只需使用键盘即可完成此操作。加分项:热键可重新选择最后选定的子文件夹(以便我可以删除、重命名等)。
- Folder A
- Subfolder A
-File 1234.pdf
- Folder B
答案1
很抱歉这么晚才回复您。这比我预想的要困难得多。
但可以通过创建一个来实现你想要的服务在自动机,然后可以通过键盘快捷键(热键)访问。
您需要关注本指南介绍如何制作系统范围的服务。
首先在中创建新服务自动机. 它将需要接收文件或文件夹作为输入,并可用于发现者。
添加运行 AppleScript操作添加到工作流程中。在该操作的文本区域中,可以复制并粘贴以下 AppleScript:
use Finder : application "Finder"
property F_ : missing value -- The previous folder
property f : missing value -- The files that we moved
property home : Finder's home as alias
on run {f, _}
get its ParentFolderOf:(some item in f)
set there to the result -- The destination folder, one level up
-- We won't navigate any higher up the folder tree than
-- the home folder
if (its ParentFolderOf:home) is in there then return
-- Also don't apply this service to other folders that aren't
-- in the same branch of the folder tree as the home folder
if (there as text) does not begin with (home as text) then return
-- The folder we're currently at
tell Finder to set F_ to ¬
(the container of some item in f) as alias
-- Check to ensure there are no files in the destination folder
-- that risk being overwritten. If there are, we won't move
-- the files who share the same name, i.e. only move those that
-- are safe to move.
tell Finder to ¬
repeat with _g in f
get name of _g
set g to [there as text, result] as text
if not (g exists) then set end of f to _g
set f to the rest of f
end repeat
-- Move the files
tell Finder ¬
to set f ¬
to (move f to there) ¬
as list as alias list
-- Reveal them
reveal f
activate Finder
end run
to ParentFolderOf:(f as alias)
local f
set F_ to [f, "::"] as text as alias
if (f as text) ends with ":" then return F_
return its ParentFolderOf:F_
end ParentFolderOf:
将服务保存为您喜欢的任何内容。 自动机自动保存在正确的位置(〜/图书馆/服务)我将其保存为“在 Finder 中提升”。
接下来,您必须创建键盘快捷键。这可以通过系统偏好设置:
在服务列表下,你需要向下滚动到标记为文件和文件夹,您的服务名称应出现在其下。您可以看到我的服务名称突出显示。我为我的服务创建了快捷方式⌃▲(Ctrl+向上)。
现在,每次我选择文件和/或文件夹时发现者然后按⌃▲,这些文件和文件夹将上升一级进入其父文件夹。如果我想将它们移回原位,可以按⌘Z撤消移动。
我设置了保护措施,这样文件和文件夹就不会被移动到文件夹树中比你的主文件夹更高的位置。无论如何,你不太可能需要这样做。