在目录中移动文件的热键(MacOS)

在目录中移动文件的热键(MacOS)

在 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撤消移动。

我设置了保护措施,这样文件和文件夹就不会被移动到文件夹树中比你的主文件夹更高的位置。无论如何,你不太可能需要这样做。

答案2

如果您在列视图中工作,则只需使用箭头键即可导航。

例如,假设您从选择的文件开始......

  • Cmd ⌘ C 复制

  • 左箭头[这将选择子文件夹 A],因此可以获得加分...

    • Enter ⌅ 将允许您重命名或 Cmd ⌘ Backspace ⌫ 删除它
      [这不会丢失当前在复制缓冲区中的文件]
  • 左箭头[这将选择文件夹 A]*

  • Cmd ⌘ Opt ⌥ V 移动

这是一开始出现的结构。

在此处输入图片描述

最后再删除一次子文件夹 A

在此处输入图片描述

*因为答案中没有提到,所以此时向下的箭头将选择文件夹 B

相关内容