Горячая клавиша для перемещения файла по каталогам (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.

Связанный контент