Создать ярлык для файла на Диске

Ярлыки — это файлы, которые ссылаются на другие файлы или папки в Google Диске. Ярлыки обладают следующими характеристиками:

  • MIME-тип application/vnd.google-apps.shortcut . Для получения дополнительной информации см. раздел «Поддерживаемые MIME-типы Google Workspace и Google Drive» .

  • Список контроля доступа (ACL) для ярлыка наследует ACL родительского элемента. ACL ярлыка нельзя изменить напрямую.

  • targetId указывает на целевой файл или папку, также называемую "целью".

  • Параметр targetMimeType указывает MIME-тип целевого объекта. Параметр targetMimeType используется для определения типа отображаемой иконки. MIME-тип целевого объекта копируется в поле targetMimeType при создании ярлыка.

  • Поля targetId и targetMimeType являются частью поля shortcutDetails в файловом ресурсе.

  • У ярлыка может быть только один родительский элемент. Если файл ярлыка необходим в других местах на Диске, его можно скопировать в эти дополнительные места.

  • При удалении целевого объекта или при потере текущим пользователем доступа к нему, ярлык пользователя, указывающий на целевой объект, перестаёт работать.

  • Заголовок ярлыка может отличаться от заголовка целевого объекта. При создании ярлыка в качестве заголовка используется заголовок целевого объекта. После создания заголовок ярлыка и заголовок целевого объекта можно изменять независимо друг от друга. Если изменяется имя целевого объекта, ранее созданные ярлыки сохраняют старый заголовок.

  • MIME-тип ярлыка может устареть. Хотя это и редкость, MIME-тип файла blob изменяется при загрузке версии другого типа, но любые ярлыки, указывающие на обновленный файл, сохраняют исходный MIME-тип. Например, если вы загрузите файл JPG в Google Диск, а затем загрузите версию AVI, Google Диск обнаружит изменение и обновит миниатюру для фактического файла. Однако ярлык по-прежнему будет иметь миниатюру JPG.

  • В функции экспорта данных учетной записи Google, также известной как Google Takeout, ярлыки представлены в виде файлов закладок Netscape, содержащих ссылки на целевой объект.

Для получения дополнительной информации см. раздел «Поиск файлов и папок с помощью ярлыков Google Диска» .

Создать ярлык

Чтобы создать ярлык, установите MIME-тип на application/vnd.google-apps.shortcut , укажите targetId на файл или папку, на которую должен ссылаться ярлык, и вызовите files.create для создания ярлыка.

В следующих примерах показано, как создать ярлык с помощью клиентской библиотеки:

Python

file_metadata = {
    'name': 'FILE_NAME',
    'mimeType': 'text/plain'
}
file = drive_service.files().create(body=file_metadata, fields='id').execute()
print('File ID: %s' % file.get('id'))
shortcut_metadata = {
     'Name': 'SHORTCUT_NAME',
     'mimeType': 'application/vnd.google-apps.shortcut',
     'shortcutDetails': {
        'targetId': file.get('id')
     }
}
shortcut = drive_service.files().create(body=shortcut_metadata,
                                    fields='id,shortcutDetails').execute()
print('File ID: %s, Shortcut Target ID: %s, Shortcut Target MIME type: %s' % (
    shortcut.get('id'),
    shortcut.get('shortcutDetails').get('targetId'),
    shortcut.get('shortcutDetails').get('targetMimeType')))

Node.js

var fileMetadata = {
  'name': 'FILE_NAME',
  'mimeType': 'text/plain'
};
drive.files.create({
  'resource': fileMetadata,
  'fields': 'id'
}, function (err, file) {
  if (err) {
    // Handle error
    console.error(err);
  } else {
    console.log('File Id: ' + file.id);
    shortcutMetadata = {
      'name': 'SHORTCUT_NAME',
      'mimeType': 'application/vnd.google-apps.shortcut'
      'shortcutDetails': {
        'targetId': file.id
      }
    };
    drive.files.create({
      'resource': shortcutMetadata,
      'fields': 'id,name,mimeType,shortcutDetails'
    }, function(err, shortcut) {
      if (err) {
        // Handle error
        console.error(err);
      } else {
        console.log('Shortcut Id: ' + shortcut.id +
                    ', Name: ' + shortcut.name +
                    ', target Id: ' + shortcut.shortcutDetails.targetId +
                    ', target MIME type: ' + shortcut.shortcutDetails.targetMimeType);
      }
    }
  }
});

Замените следующее:

  • FILE_NAME : имя файла, для которого требуется создать ярлык.
  • SHORTCUT_NAME : имя для этого сочетания клавиш.

По умолчанию ярлык создается в папке «Мой диск» текущего пользователя, и ярлыки создаются только для файлов или папок, к которым у текущего пользователя есть доступ.

Найти короткий путь

Для поиска ярлыка используйте строку запроса q с files.list для фильтрации возвращаемых ярлыков.

mimeType operator values

Где:

  • query_term — это поисковый запрос или поле, по которому будет производиться поиск. Чтобы просмотреть поисковые запросы, которые можно использовать для фильтрации общих дисков, см. раздел «Поисковые запросы» .
  • Оператор задает условие для поискового запроса. Чтобы узнать, какие операторы можно использовать с каждым поисковым запросом, см. раздел «Операторы запроса» .
  • Значения — это конкретные значения, которые вы хотите использовать для фильтрации результатов поиска.

Например, следующая строка запроса фильтрует поиск, чтобы вернуть все ярлыки к файлам электронных таблиц:

q: mimeType='application/vnd.google-apps.shortcut' AND shortcutDetails.targetMimeType='application/vnd.google-apps.spreadsheet'