Создание трехмерной ссылки на один и тот же диапазон ячеек на нескольких листах
Примечание: Мы стараемся как можно оперативнее обеспечивать вас актуальными справочными материалами на вашем языке. Эта страница переведена автоматически, поэтому ее текст может содержать неточности и грамматические ошибки. Для нас важно, чтобы эта статья была вам полезна. Просим вас уделить пару секунд и сообщить, помогла ли она вам, с помощью кнопок внизу страницы. Для удобства также приводим ссылку на оригинал (на английском языке).
Ссылка, указывающая на одну и ту же ячейку или диапазон на нескольких листах, называется трехмерной ссылкой. Трехмерная ссылка полезна и удобна для ссылки на несколько листов, которые следуют тому же шаблону, и ячейки на каждом листе содержат одинаковые типы данных, например при консолидации данных бюджета из разных отделов Организации.
В этой статье
-
Сведения о трехмерных рефереренце
-
Изменение трехмерных ссылок при перемещении, копировании, вставке и удалении листов
-
Создание трехмерной ссылки
-
Создание имени для трехмерной ссылки
Сведения о трехмерных рефереренце
Трехмерную ссылку можно использовать для суммирования распределения бюджета между тремя подразделениями, продажами, персоналом и маркетингом на разных листах с помощью следующей трехмерной ссылки:
=SUM(Sales:Marketing!B3)
Вы даже можете добавить еще один лист, а затем переместить его в диапазон, на который ссылается формула. Например, чтобы добавить ссылку на ячейку B3 на листе » услуги «, переместите лист » услуги » между листами продаж и кадров , как показано в следующем примере.
К началу страницы
Изменение трехмерных ссылок при перемещении, копировании, вставке и удалении листов
В следующих примерах объясняется, что происходит при вставке, копировании, удалении или перемещении листов, включенных в трехмерную ссылку. В примерах используется формула =СУММ(Лист2:Лист6!A2:A5) для суммирования значений в ячейках с A2 по A5 на листах со второго по шестой.
Вставка или копирование При вставке или копировании листов между листами и 6 (конечные точки в этом примере) Excel включает все значения в ячейках A2 – A5 из добавленных листов вычислений.DELETE При удалении листов между листами «Лист2» и «6» в Excel удаляются значения из вычислений.
Перемещение При перемещении листов между листами и 6 на место, находящиеся за пределами диапазона листа, на который указывает ссылка, Excel удаляет их значения из расчета.
Удаление конечного листа Если удалить лист «Лист2» или «6», Excel удалит на нем значения из расчета.
К началу страницы
Создание трехмерной ссылки
-
Щелкните ячейку, в которую вы хотите ввести функцию.
-
Введите = (знак равенства), введите имя функции, а затем введите открывающую круглую скобку.
В трехмерной ссылке можно использовать указанные ниже функции.
Функция | Описание |
---|---|
СУММ |
Сложение чисел. |
СРЗНАЧ |
Вычисляет среднее значение (среднее арифметическое) чисел. |
AVERAGEA |
Вычисляет среднее значение (среднее арифметическое) чисел; включает в себя текст и логические правила. |
СЧЁТ |
Подсчитывает количество ячеек, содержащих числа. |
СЧЁТЗ |
Подсчитывает количество непустых ячеек. |
МАКС |
Находит наибольшее значение в наборе значений. |
Макса |
Находит наибольшее значение в наборе значений; включает в себя текст и логические правила. |
МИН |
Находит наименьшее значение в наборе значений. |
Мина |
Находит наименьшее значение в наборе значений; включает в себя текст и логические правила. |
ПРОИЗВЕД |
Умножает числа. |
СТАНДОТКЛОН |
Вычисляет стандартное отклонение по выборке. |
СТАНДОТКЛОНА |
Вычисляет стандартное отклонение по выборке. включает в себя текст и логические правила. |
СТАНДОТКЛОНП |
Вычисляет стандартное отклонение для Генеральной совокупности. |
СТАНДОТКЛОНПА |
Вычисляет стандартное отклонение по Генеральной совокупности. включает в себя текст и логические правила. |
ДИСП |
Оценивает дисперсию по выборке. |
ДИСПА |
Оценивает дисперсию по выборке. включает в себя текст и логические правила. |
ДИСПР |
Вычисляет дисперсию для Генеральной совокупности. |
ДИСПРА |
Вычисляет дисперсию для Генеральной совокупности; включает в себя текст и логические правила. |
-
Щелкните ярлычок первого листа, на который должна указывать ссылка.
-
Удерживая нажатой клавишу SHIFT, щелкните ярлычок последнего листа, на который должна указывать ссылка.
-
Выделите ячейку или диапазон ячеек, на которые должна указывать ссылка.
-
Введите формулу и нажмите клавишу ВВОД.
К началу страницы
Создание имени для трехмерной ссылки
-
На вкладке Формулы в группе Определенные имена выберите команду Присвоить имя.
-
В диалоговом окне новое имя в поле имя введите имя, которое будет использоваться для ссылки. Длина имени не может превышать 255 знаков.
-
В поле Формула выберите знак равенства (=) и ссылку, а затем нажмите клавишу BACKSPACE.
-
Щелкните ярлычок первого листа, на который нужно сослаться.
-
Удерживая нажатой клавишу SHIFT, щелкните ярлычок последнего листа, на который нужно сослаться.
-
Выделите ячейку или диапазон ячеек, на которые нужно сослаться.
К началу страницы
4.3.Ссылки. Linux-сервер своими руками
Иногда очень полезно, чтобы в каталоге находился один и тот же файл, но под разными именами. Можно просто скопировать этот файл в другой, но при этом неэффективно используется дисковое пространство. Для этих целей в ОС Linux существует специальный тип файлов — ссылки. Ссылки позволяют хранить один и тот же файл, но под разными именами. Linux поддерживает два типа ссылок: жесткие (прямые) и символические.
Жесткие ссылки
Каждый файл в файловой системе Linux имеет свой индекс. Индекс — это уникальный номер файла. Получить информацию обо всех индексах в текущем каталоге можно с помощью команды Is –i. Исходя из принятых положений можно дать более точное определение каталога: каталог — это просто список индексов файлов. Допустим, у нас есть файл text. Просмотрим его индекс:
ls –i text
25617 text
Теперь создадим жесткую ссылку на файл text командой In:
ln text words
Обратите внимание, что ссылка words на файл text имеет тот же индекс, что и файл text:
ls –i words
25617 words
Отсюда следует, что жесткие ссылки привязываются к индексу файла. В рамках одной файловой системы вы можете организовывать только жесткие ссылки.
Командой In можно создать множество ссылок на один файл и все они будут иметь один и тот же индекс.
Изменяя файл words, вы автоматически измените файл text. Удаляя файл words, вы можете удалить и файл text, но только в том случае, когда на него нет больше ссылок. В противном случае удалению подлежит только ссылка. Количество ссылок отображается по команде Is –l. Число, стоящее слева от имени владельца, и есть количеством ссылок. При этом доступны две ссылки на каталоги: «.» – ссылка на текущий каталог, а «..» – на родительский.
Символические ссылки
Символические ссылки выполняют ту же функцию, что и жесткие, но несколько иначе. Они не ссылаются на индекс файла. Символическая ссылка представляет собой специальный файл, при обращении к которому система понимает, что на самом деле нужно обратиться к другому файлу и обеспечивает прозрачность операции. Отсюда следует, что операции с символическими ссылками выполняются медленнее, чем с жесткими. Создать символическую ссылку можно командой ln –s, например:
ln –s text words
Теперь, введя команду Is –i, вы увидите, что файлы text и words имеют разные индексы. Посмотрим, какую информацию выведет команда ls –l text words:
ls –l text words
lrwxrwxrwx 1 den group 3 Dec 5 12:11 words –> text
-rw-r--r-- 1 den group 12 Dec 5 12:50 words
Обратите внимание на первый символ строки lrwxrwxrwx — символ «l». Это означает, что данный файл является символической ссылкой на файл text, о чем свидетельствует информация в последней колонке words->text.
Символическая ссылка не имеет прав доступа — для нее всегда используется набор rwxrwxrwx. Подробнее о наборах прав доступа будет сказано ниже. А на данном этапе хочется отметить следующее: символические ссылки очень полезны, так как они позволяют идентифицировать файл, на который они ссылаются, тогда как для жестких ссылок нет простого способа определить, какие файлы привязаны к одному и тому же индексу. Однако, если вы удалите файл, на который ссылаются символические ссылки, то получите паутину бесполезных ссылок, которые ни на что не ссылаются. При использовании жестких ссылок вы не сможете удалить файл до тех пор, пока на него ссылается хоть одна жесткая ссылка.
Переменная окружения $cwd содержит имя символической ссылки каталога, если такая существует. Просмотреть ее значение можно с помощью команды:
echo $cwd
Читать книгу целиком
Поделитесь на страничкеСледующая глава >
Зачем нужен стиль ссылок R1C1
«У меня в Excel, в заголовках столбцов листа появились цифры (1,2,3…) вместо обычных букв (A,B,C…)! Все формулы превратились в непонятную кашу с буквами R и С! Что делать??? Помогите!»
Этот вопрос я слышу почти на каждом тренинге, да и на нашем форуме он всплывает с завидной периодичностью. Давайте, наконец, разберемся — что же это за хитрый режим ссылок, как с ним бороться и для чего он, собственно говоря, вообще предназначен.
Что это
Классическая и всем известная система адресации к ячейкам листа в Excel представляет собой сочетание буквы столбца и номера строки — морской бой или шахматы используют ту же идею для обозначения клеток доски. Третья сверху во втором столбце ячейка, например, будет иметь адрес B3. Иногда такой стиль ссылок еще называют «стилем А1». В формулах адреса могут использоваться с разным типом ссылок: относительными (просто B3), абсолютными ($B$3) и смешанного закрепления ($B3 или B$3). Если с долларами в формулах не очень понятно, то очень советую почитать тут про разные типы ссылок, прежде чем продолжать.
Однако же, существует еще и альтернативная малоизвестная система адресации, называемая «стилем R1C1». В этой системе и строки и столбцы обозначаются цифрами. Адрес ячейки B3 в такой системе будет выглядеть как R3C2 (R=row=строка, C=column=столбец). Относительные, абсолютные и смешанные ссылки в такой системе можно реализовать при помощи конструкций типа:
- RC — относительная ссылка на текущую ячейку
- R2C2 — то же самое, что $B$2 (абсолютная ссылка)
- RC5 — ссылка на ячейку из пятого столбца в текущей строке
- RC[-1] — ссылка на ячейку из предыдущего столбца в текущей строке
- RC[2] — ссылка на ячейку, отстоящую на два столбца правее в той же строке
- R[2]C[-3] — ссылка на ячейку, отстоящую на две строки ниже и на три столбца левее от текущей ячейки
- R5C[-2] — ссылка на ячейку из пятой строки, отстоящую на два столбца левее текущей ячейки
- и т.д.
Ничего суперсложного, просто слегка необычно.
Как это включить/отключить
Мало кто использует этот режим осознанно. Обычно он случайно включается сам, например, при открытии кривых выгрузок из 1С в Excel и в некоторых других ситуациях. Отключить его совсем несложно. Самый простой путь:
В Excel 2007/2010: кнопка Офис (Файл) — Параметры Excel — Формулы — Стиль ссылок R1C1 (File — Excel Options — Formulas — R1C1-style)
В Excel 2003 и старше: Сервис — Параметры — Общие — Стиль ссылок R1C1 (Tools — Options — General — R1C1-style)
Если вам приходится делать это часто, то имеет смысл создать простой макрос, переключающий эти два режима туда-обратно:
Sub ChangeRefStyle() If Application.ReferenceStyle = xlA1 Then Application.ReferenceStyle = xlR1C1 Else Application.ReferenceStyle = xlA1 End If End Sub
Можно сохранить его в личную книгу макросов и повесить на кнопку на панели инструментов или на сочетание клавиш (как это сделать описано тут).
Где это может быть полезно
А вот это правильный вопрос. Если звезды зажигают, то это кому-нибудь нужно. Есть несколько ситуаций, когда режим ссылок R1C1 удобнее, чем классический режим А1:
- При проверке формул и поиске ошибок в таблицах иногда гораздо удобнее использовать режим ссылок R1C1, потому что в нем однотипные формулы выглядят не просто похоже, а абсолютно одинаково. Сравните, например, одну и ту же таблицу в режиме отладки формул (CTRL+~) в двух вариантах адресации:
Найти ошибку в режиме R1C1 намного проще, правда?
- Если большая таблица с данными на вашем листе начинает занимать уже по нескольку сотен строк по ширине и высоте, то толку от адреса ячейки типа BT235 в формуле немного. Видеть номер столбца в такой ситуации может быть гораздо полезнее, чем его же буквы.
- Некоторые функции Excel, например ДВССЫЛ (INDIRECT) могут работать в двух режимах — A1 или R1C1. И иногда оказывается удобнее использовать второй.
- В коде макросов на VBA часто гораздо проще использовать стиль R1C1 для ввода формул в ячейки, чем классический A1. Так, например, если нам надо сложить два столбца чисел по десять ячеек в каждом (A1:A10 и B1:B10,) то мы могли бы использовать в макросе простой код:
Range("C1:C10").FormulaR1C1="=RC[-2]*RC[-1]"
т.к. в режиме R1C1 все формулы будут одинаковые. В классическом же представлении в ячейках столбца С все формулы разные, и нам пришлось бы писать код циклического прохода по каждой ячейке, чтобы определить для нее формулу персонально, т.е. что-то типа:
For Each cell In Range("C1:C10") cell.Formula = "=" & cell.Offset(0, -2).Address & "*" & cell.Offset(0, -1).Address Next cell
Ссылки по теме
Magnet-ссылка — Википедия
URI-схема magnet: — открытый, находящийся в стадии рабочего черновика стандарт, определяющий URI-схему т. н. magnet-ссылок, предназначенных преимущественно для указания на ресурсы, доступные к загрузке через пиринговые сети. Такие ссылки в основном идентифицируют файлы не по их расположению или имени, а по содержанию — вернее, по его хеш-коду.
Поскольку такие ссылки позволяют найти файл на основе его содержания и метаинформации, а не его фактического расположения, их можно считать разновидностью URN, а не более общего URI. Хотя magnet-ссылки могут использоваться в других сферах, они наиболее востребованы в пиринговых сетях, поскольку в таких сетях ссылка на некий ресурс не означает, что он должен быть постоянно доступен.
Стандарт был создан в 2002 году, отчасти как обобщение, независимое от конкретных производителей программного обеспечения и проектов, URI-схем ed2k:
и freenet:
, использующихся сетями eDonkey2000 и Freenet соответственно. Создание стандарта сопровождалось попыткой следовать стандартам URI от IETF настолько, насколько это было возможно.
- Используются в DC++ Каталогах, где они публикуются вместе с подробным описанием файла.
- В BitTorrent каталогах, где публикуются как альтернативный способ загрузки вместе с подробным описанием раздачи.
- Для загрузки файла с сохранением его под именем, отличным от указанного в url.[1]
Поскольку не все парсеры воспринимают magnet-ссылку так же, как и любую другую URL ссылку, такие ссылки могут встречаться в текстовом виде (разбитыми на несколько строк) — в таком случае они должны быть предварительно «собраны» путём удаления переводов строки. Существуют специальные плагины для браузеров, которые позволяют воспринимать magnet-ссылку так же, как и любую другую.
Также magnet-ссылки могут распространяться в виде файлов с расширением *.magnet.
Наиболее распространённое использование magnet-ссылок — указание на конкретный файл при помощи его уникального идентификатора, подобного ISBN, но основанного на хеш-коде содержимого файла. В отличие от других видов идентификаторов, magnet-ссылку может сгенерировать любой обладатель файла по стандартному алгоритму, благодаря чему наличие централизованной организации, отвечающей за их присвоение, не требуется.
Поскольку любое хеширование является сужающим преобразованием, теоретически возможны ситуации, в которых два разных файла будут обладать одинаковыми хеш-кодами, однако на практике они возникают исключительно редко.
Одним из преимуществ magnet-ссылок является их открытость и независимость от платформы: они могут быть использованы для загрузки файла при помощи разнообразных приложений на практически всех операционных системах. Благодаря тому, что magnet-ссылка представляет собой короткую строку текста, она может быть легко скопирована через буфер обмена, отправлена по электронной почте, при помощи программы мгновенного обмена сообщениями, SMS или службы микроблогинга. Также существуют интернет-службы для генерации коротких ссылок из magnet-ссылок любой длины.
Magnet-ссылка может содержать один или несколько параметров, разделенных между собой знаком ‘&’. Порядок следования параметров не документирован. Для некоторых значений важно положение параметра для правильного синтаксического анализа клиентом магнет-ссылки.
- Пример
magnet:?xl=Размер_в_байтах&dn=Имя_файла&xt=urn:tree:tiger:TTH-хеш_файла
- Параметры
- dn (Display Name) — имя файла.
- xl (eXact Length) — размер файла в байтах.
- dl (Display Length) — отображаемый размер в байтах.
- xt (eXact Topic) — URN, содержащий хеш файла.
- as (Acceptable Source) — веб-ссылка на файл в Интернете.
- xs (eXact Source) — P2P ссылка.
- kt (Keyword Topic) — ключевые слова для поиска.
- mt (Manifest Topic) — ссылка на метафайл, который содержит список магнетов (MAGMA).
- tr (TRacker) — адрес трекера для BitTorrent клиентов.
URN, содержащий хеш (xt)[править | править код]
Данная часть магнет-ссылки является самой главной. Именно по указанному в ней хешу производится поиск источников и проверка файла.
TTH (Tiger Tree Hash)[править | править код]
Хеш используется в сетях Direct Connect и Gnutella
xt=urn:tree:tiger:[ TTH хеш файла (Base32) ]
SHA-1 (Secure Hash Algorithm 1)[править | править код]
Хеш используется в сетях Gnutella, Gnutella2 а также для создания микро-торрента из магнет-ссылки.
xt=urn:sha1:[ sha1 хеш файла (Base32) ]
BitPrint[2][править | править код]
Это последовательная запись хеша SHA-1 и TTH, разделённых точкой. Хеш используется в Gnutella2. Direct Connect использует только TTH часть BitPrint
xt=urn:bitprint:[ sha1 хеш файла (Base32) ].[ TTH хеш файла (Base32) ]
ED2K (EDonkey2000) Hash[править | править код]
Хеш ED2K (для файлов с размером не более 9 728 000 байт соответствует MD4) используется в EDonkey2000
xt=urn:ed2k:[ ed2k хеш файла (Hex) ]
AICH[3] (Advanced Intelligent Corruption Handler)[править | править код]
Неофициальный URN для магнет. eDonkey2000 клиентами пока не читается. Хеш используется в eDonkey2000 для восстановления целостности файла.
xt=urn:aich:[ aich хеш файла (Base32) ]
Магнет-ссылки с AICH создаёт, к примеру, Rhash (rhash —aich —magnet filename).
Kazaa Hash[править | править код]
Хеш используется в FastTrack
xt=urn:kzhash:[ Kazaa хеш (Hex) ]
BTIH (BitTorrent Info Hash)[править | править код]
Хеш используется в сетях BitTorrent (Azureus, µTorrent)
xt=urn:btih:[ BTIH (Hex) ]
MD5 (Message Digest 5)[править | править код]
Хеш используется в Gnutella2
xt=urn:md5:[ MD5 хеш (Hex) ]
CRC-32 (Cyclic Redundancy Check)[править | править код]
Неофициальный URN для магнет. В P2P сетях не используется.
xt=urn:crc32:[ CRC-32 (Base10) ]
Веб-ссылки на файл[править | править код]
Существует 3 вида ссылок, которые можно вставить в magnet-ссылку.
Обычная (as)[править | править код]
Эта ссылка указывает адрес файла на обычном веб-сервере. Клиент обращается по ней не сразу, а только по прошествии некоторого времени; таким образом, эта ссылка используется только в том случае, если файл не удалось обнаружить в P2P-сетях, что позволяет избежать излишней нагрузки на сервер.
as=[веб-ссылка на файл (URL encoded)]
BitTorrent Web Seed (ws)[править | править код]
Это прямая ссылка на файл или каталог для загрузки. GetRight поддерживает загрузку по протоколам HTTP, HTTPS, FTP и FTPS. Возможно использование и других протоколов, например, RTSP или MMS, если их поддержка реализована в клиенте.
ws=[веб-ссылка на файл/каталог (URL encoded)]
P2P (xs)[править | править код]
Эта ссылка — обычно адрес файла не на сервере, а на P2P-клиенте или адрес хаба (в случае DC++). По этой ссылке клиент пытается сразу соединиться и запросить файл или его источники. Данное поле обычно используется P2P-клиентами для хранения источника. Ссылка может содержать хеш файла.
Content-Addressable Web URL[править | править код]
[4] Данный вид ссылки в основном используется только клиентом Shareaza.
xs=http://[Адрес клиента]:[Порт клиента]/uri-res/N2R?[ URN содержащий хеш файла ]
Ссылка на DirectConnect хаб с источниками файла[править | править код]
По этой ссылке клиент DirectConnect сразу же соединяется с указанным хабом. Правильно работает только в не URI кодированном виде в конце магнет-ссылки. Позволяет собраться качающим один тот же файл по этой магнет-ссылке на одном хабе.
xs=dchub://[Адрес хаба]:[Порт хаба]
Для вставки в магнет-ссылку желательно использовать адрес крупного публично доступного Direct Connect хаба на котором нет ограничений по размеру шары (доступных для скачивания с клиента файлов).
Ссылка на кеш источников файла для Gnutella2[править | править код]
В данном случае ссылка указывает не на клиент, а на кеш источников. Кеш не имеет у себя файла, но записывает и выдаёт адреса тех, у кого открыт порт на раздачу и он обратился по этому адресу. Тем самым, те, кто обращался за этим файлом по этому адресу, возможно, уже получили файл и теперь могут передать его следующему запросившему. Эта система работает аналогично BitTorrent-трекеру.
xs=http://cache.freebase.be/[ sha1 хеш файла ]
Ссылка на ED2K источник[править | править код]
xs=ed2kftp://[Адрес клиента]:[Порт клиента]/[ed2k hash]/[file size]/
Отображаемый размер (dl)[править | править код]
Магнитные ссылки ссылаются только на один файл. В некоторых DC++-клиентах есть работающая реализация ссылок на каталоги. Такие ссылки инвариантны относительно переименования файлов в каталоге, но неинвариантны относительно удаления, изменения или добавления таких файлов, как Thumbs.db, program.ini и тому подобных, поэтому более надёжный способ сослаться на каталог — создать метафайл. Метафайл является файлом, его можно послать в приложении или сохранить на web-сайте, но также на него можно сослаться магнитной ссылкой, например, в чате. Однако, параметр xl такой ссылки характеризует размер метафайла, но не размер каталога, что неудобно. Параметр dl характеризует именно размер каталога, описываемого метафайлом. ПО, распознающее и отображающее магнитные ссылки в читаемом виде, должно отдавать предпочтение параметру dl при отображении размера. dl не является техническим параметром, влияющим на скачивание или поиск, поэтому этот параметр применим в других вариантах использования, например, в магнитных ссылках на составные раздачи BitTorrent.
Манифест (mt)[править | править код]
Это ссылка на список ссылок (файл лист). Может быть как веб-ссылкой,
mt=http://weblog.foo/all-my-favorites.rss
так и URN
mt=urn:sha1:3I42h4S6NNFQ2MSVX7XZKYAYSCX5QBYJ
Совместно с остальными может использоваться для получения дополнительной информации по файлу.
Пример:
magnet:?xl=10826029&dn=mediawiki-1.15.1.tar.gz &xt=urn:tree:tiger:7N5OAMRNGMSSEUE3ORHOKWN4WWIQ5X4EBOOTLJY &mt=urn:btih:QHQXPYWMACKDWKP47RRVIV7VOURXFE5Q
Данный магнет содержит данные одного файла, а часть mt содержит BTIH .torrent файла который содержит дополнительную информацию по файлу.
Ключевые слова (kt)[править | править код]
Это поле задаёт строку для поиска в P2P сетях.
kt=martin+luther+king+mp3
Адрес трекера (tr)[править | править код]
URL трекера. Используется для получения BitTorrent источников без использования сети DHT. Позволяет обойтись без торрент файла (он скачивается у полученных источников).[5]
tr=http://example.com/announce
Битрейт (br)[править | править код]
Скорость загрузки(битрейт) при которой части файла можно запрашивать последовательно. Загрузка последовательно происходит только в части файла от начала и до точки воспроизведения[6]. Если пир не имеет доступных частей для последовательной загрузки запрашивается случайная из другой части файла.[7]
br=192000
Расчёт:
br=[размер файла в байтах]*8 / [продолжительность аудио или видео в секундах]
Алгоритм использования в p2p клиенте:
1 Если (скорость загрузки файла меньше заданного битрейта) то файл загружается случайным порядком; 2 Иначе Если (скорость загрузки непрерывного участка от начала файла меньше или равна битрейту) то файл загружается последовательно; Иначе файл загружается случайно;
Дополнение формата (x.)[править | править код]
Для самостоятельного дополнения формата неофициальными параметрами для них предусмотрен префикс ‘x.’
x.[название нового параметра]=[данные нового параметра (URL encoded)]
Группы параметров[править | править код]
Названиям параметров одной группы добавляется суффикс ‘.’ (точка) и индекс группы.
magnet:?xt.1=[ URN первого файла ]&xt.2=[ URN второго файла ]
Замечание[править | править код]
Некоторые программы, создающие magnet-ссылку, не кодируют специальные и национальные символы в URI представление (%20) и тем самым эти ссылки на веб-странице могут вызвать ошибки. Особенно это важно, когда ссылка, вставляемая в magnet-ссылку, содержит знаки «&»; они должны быть заменены на «%26».
URI Кодирование[править | править код]
Вставляемые ссылки в предназначенные для этого поля (as, xs, tr) перед этим должны быть URI-кодированы[8]
URL трекера
http://tracker.example.org/announce.php?uk=1111111111&
в magnet-ссылке должен выглядеть так
magnet:?tr=http%3A%2F%2Ftracker.example.org%2Fannounce.php%3Fuk%3D1111111111%26
Кодирование URL
» | #[9] | % | &[9] | ‘ | * | ,[9] | :[9] | ;[9] | < | > | ?[9] | [ | ^ | ` | { | | | } | <пробел> |
%22 | %23 | %25 | %26 | %27 | %2a | %2c | %3a | %3b | %3c | %3e | %3f | %5b | %5e | %60 | %7b | %7c | %7d | %20[10] |
Вставка в HTML[править | править код]
Перед вставкой в HTML-код в ссылке необходимо заменить все знаки «&» на «&».
Исходный магнет
magnet:?dn=file.ext&tr=http%3A%2F%2Ftracker.example.org%2Fannounce.php%3Fuk%3D1111111111%26
при вставке в HTML-код должен выглядеть так
<a href="magnet:?dn=file.ext&tr=http%3A%2F%2Ftracker.example.org%2Fannounce.php%3Fuk%3D1111111111%26">file.ext</a>
Это можно сделать, воспользовавшись программой Notepad++ v5.4.5+, при помощи пункта меню TextFX -> TextFX Convert -> Encode HTML (&<>»)
Разбиение на строки[править | править код]
При необходимости разбить ссылку на строки[11], переход на новую строку лучше ставить перед знаком «&» (амперсанд). В таком случае, встретив его в начале строки, можно легко понять, что это продолжение magnet-ссылки.
magnet:?xl=10826029&dn=mediawiki-1.15.1.tar.gz &xt=urn:tree:tiger:7N5OAMRNGMSSEUE3ORHOKWN4WWIQ5X4EBOOTLJY &xt=urn:btih:QHQXPYWMACKDWKP47RRVIV7VOURXFE5Q
Публикация[править | править код]
В некоторых форумах делают специальный BBCode тег [magnet], но, если его нет, можно попробовать воспользоваться тегом [url].
При вставке магнета в тег [url] парсер форума может сделать его непригодным для использования. Чтобы обойти это ограничение, можно воспользоваться сайтом[12], который позволит сделать из магнет-ссылки url, добавив его адрес в начало.
Пример:
https://ivan386.github.io/#magnet:?xl=10826029&dn=mediawiki-1.15.1.tar.gz&xt=urn:tree:tiger:7N5OAMRNGMSSEUE3ORHOKWN4WWIQ5X4EBOOTLJY
Кликнув по такой ссылке, пользователь попадёт на страницу, которая перенаправит его на исходную magnet-ссылку. Сама magnet-ссылка при этом не отправляется в GET-запросе серверу, что делает её невидимой для провайдера и сервера. Но в социальных сетях при публикации такая ссылка может обрезаться из-за символов «#» и «:» до символа «?». В таком случае, удалив их, можно обойти это ограничение, но при этом данные magnet-ссылки уже будут передаваться в GET-запросе серверу.
Пример:
https://ivan386.github.io/magnet?xl=10826029&dn=mediawiki-1.15.1.tar.gz&xt=urn:tree:tiger:7N5OAMRNGMSSEUE3ORHOKWN4WWIQ5X4EBOOTLJY
Magnet-ссылка на файл mediawiki-1.15.1.tar.gz (для удобства восприятия ссылка разбита на строки):
magnet:?xt=urn:ed2k:354B15E68FB8F36D7CD88FF94116CDC1 &xl=10826029 &dn=mediawiki-1.15.1.tar.gz &xt=urn:tree:tiger:7N5OAMRNGMSSEUE3ORHOKWN4WWIQ5X4EBOOTLJY &xt=urn:sha1:XRX2PEFXOOEJFRVUCX6HMZMKS5TWG4K5 &xt=urn:aich:7ZDRR3ZQW4JMHUQZUMJGQN2VNGLV3CVN &xt=urn:btih:QHQXPYWMACKDWKP47RRVIV7VOURXFE5Q &tr=http%3A%2F%2Ftracker.example.org%2Fannounce.php%3Fuk%3D1111111111%26 &tr=wss%3A%2F%2Ftracker.webtorrent.io &as=http%3A%2F%2Fdownload.wikimedia.org%2Fmediawiki%2F1.15%2Fmediawiki-1.15.1.tar.gz &ws=http%3A%2F%2Fdownload.wikimedia.org%2Fmediawiki%2F1.15%2Fmediawiki-1.15.1.tar.gz &xs=http%3A%2F%2Fcache.example.org%2FXRX2PEFXOOEJFRVUCX6HMZMKS5TWG4K5 &xs=dchub://example.org (недоступная ссылка)[13]QR-код с данной «универсальной» magnet-ссылкой
Данная ссылка может быть закодирована в виде QR-кода.
Также данная ссылка может быть сокращена с помощью некоторых служб сокращения ссылок, поддерживающих URI-схему magnet:
, например, TinyURL или mgnet.me (схема (протокол) http:
опущен):
tinyurl.com/lr85y2g
Это может быть полезно в ряде случаев, например, при публикации magnet-ссылки в Twitter, размер сообщения в котором ограничен 140 символами, или при кодировании magnet-ссылки в виде QR-кода с целью уменьшения размера последнего.
Данная ссылка содержит необходимую информацию для возможности скачивания по ней в пяти P2P-сетях: eDonkey2000, Direct Connect, BitTorrent, Gnutella, Gnutella2. Это позволяет программам-клиентам, поддерживающим несколько P2P-сетей, осуществлять межсетевую загрузку и раздачу файлов.
Большинство программ-клиентов не могут корректно обработать (разобрать) универсальную ссылку и/или не поддерживают некоторые протоколы и не умеют игнорировать неподдерживаемые параметры, либо чувствительны к взаимному расположению параметров в magnet-ссылках. В таких случаях ссылку необходимо предварительно подготовить: расположить параметры в ссылке в нужном порядке и/или удалить неподдерживаемые параметры.
Также в ней реализована схожая с торрент-трекером система для сетей Gnutella2 и Direct Connect.
- Клиент сети Gnutella2[14] может получить источники файла по ссылке на кеш источников (недоступная ссылка) http://cache.example.org/FXRX2PEFXOOEJFRVUCX6HMZMKS5TWG4K5 (недоступная ссылка) (недоступная ссылка).[15]
- Клиент сети Direct Connect может соединиться с хабом «dchub://example.org{{Недоступная ссылка|date=Февраль 2019 |bot=InternetArchiveBot }}{{Недоступная ссылка|date=Август 2018 |bot=InternetArchiveBot }}{{Недоступная ссылка|date=Май 2018 |bot=InternetArchiveBot }}», где может быстро найти источники файла. Но данная возможность не приветствуется пользователями и администраторами хабов, поскольку при клике на ссылку клиент автоматически соединяется с хабом, не спросив пользователя.
Универсальные | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
Клиент | dn | xl | xt | as | xs | ws | kt | mt | tr | Перехват | Вставка |
Shareaza | Да | Да | urn: sha1: urn: tree: tiger: urn: bitprint: urn: ed2k: urn: md5: urn: btih: | http: ftp: | http: ftp: | ? | Да | Нет | Да | Да | Да |
Mldonkey | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? |
Direct Connect | |||||||||||
ApexDC++ 1.0.1 | Да | Да | urn: tree: tiger: urn: bitprint: | dchub://[hubaddress]: [hubport] | dchub://[hubaddress]: [hubport] | ? | Нет | ? | Нет | Да | Нет |
FlylinkDC++ r500 release | Да | Да | urn: tree: tiger: urn: bitprint: urn: btih: (только передача торрент клиенту) | dchub://[hubaddress]: [hubport] | dchub://[hubaddress]: [hubport] | ? | Да | Нет | Нет | Да | Да |
EiskaltDC++ 2.2.6 | Да | Да | urn: tree: tiger: urn: bitprint: | dchub://[hubaddress]: [hubport] | dchub://[hubaddress]: [hubport] | ? | Да | ? | Нет | Да | Да |
GreyLink 0.39 | Да | Да | urn: tree: tiger: urn: bitprint: | ? | ? | ? | ? | ? | Нет | Да | Да |
BitTorrent | |||||||||||
Vuze (старое название: Azureus) 3.0 | ? | ? | urn: btih: | ? | ? | ? | ? | ? | ? | ? | ? |
LeechCraft 0.5 | Да | Да | urn: btih: | ? | ? | ? | Да | ? | Да | Да | Да |
μTorrent 3.4 | Да | Да | urn: btih: | ? | ? | http: https: | ? | ? | http: udp: | Да | Да |
BitComet | Да | Да | urn: btih: | Нет | Нет | ? | Нет | Нет | Да | Да | Да |
Transmission (as of v2.84)[16][17] | Да | Нет | urn: btih: | Нет | Нет | Да | Нет | Нет | Да | Да | Да |
Gnutella | |||||||||||
LimeWire | Да | Да | urn: sha1: | http: urn: guid: | ? | ? | Нет | Нет | Нет | Да | Да |
EDonkey2000 | |||||||||||
aMule 2.2.1 | Да | Да | urn: ed2k: | ? | ? | ? | ? | ? | ? | Возможен при помощи MLDonkey Protocol Handler для FireFox | Да |
WebTorrent (BitTorrent over WebRTC) | |||||||||||
instant.io | Да | ? | urn: btih: | http: https: | ? | http: https: | ? | ? | wss: ws: | Да | Да |
βTorrent (btorrent.xyz) | Да | ? | urn: btih: | http: https: | ? | http: https: | ? | ? | wss: ws: | Нет | Да |
Клиент | dn | xl | xt | as | xs | ws | kt | mt | tr | Перехват | Вставка |
«Да» — поддерживается; «Нет» — не поддерживается; «?» — поддержка неизвестна.
DC-клиенты[править | править код]
Большинство клиентов «перехватывают» magnet-ссылку только из браузера. Поэтому magnet-ссылку необходимо вставить в адресную строку браузера и нажать кнопку «Переход» (в браузере рядом с адресной строкой) или Enter (на клавиатуре). Для другого типа достаточно просто кликнуть мышью по ссылке. GreyLink и FlylinkDC++ позволяют вводить magnet-ссылки в клиенте («Файл → Ввести магнитную ссылку…», либо «Ctrl+M»). EiskaltDC++ позволяет передавать magnet-ссылку в качестве аргумента при запуске программы, открывать ссылку из буфера обмена («Файл → Открыть магнет-ссылку», либо «Ctrl+I») или можно просто скопировать ссылку в панель быстрого поиска и нажать Enter (на клавиатуре).
aMule 2.2[править | править код]
«воспринимает» магнет, только если его вставить в строку eD2k Link внизу клиента. Поэтому магнет-ссылку необходимо предварительно «собрать», скопировать, вставить в это поле и нажать кнопку добавить.
ED2K Хеш, размер, имя файла должны быть первыми и в этом порядке. Клиент делит ссылку. Данные о размере файла и его хеш могут быть в разных частях. Из-за этого ссылка может стать непригодной для скачивания.
- ↑ VKontakte Audio Download, Playlist, Artist -Title filter for Greasemonkey
- ↑ What is a Bitzi Bitprint? Архивная копия от 13 сентября 2009 на Wayback Machine (англ.)
- ↑ AICH Архивировано 6 ноября 2009 года. (англ.)
- ↑ сохранённая копия: http://open-content.net/specs/draft-jchapweske-caw-03.html (неопр.) (недоступная ссылка). Дата обращения 20 февраля 2010. Архивировано 13 октября 2012 года.
- ↑ magnet URI format (англ.)
- ↑ Битрейт * (Время прошедшее от начала загрузки)
- ↑ В настоящее время данный параметр распознаётся только модификацией P2P-клиента Shareaza от ivan386.
- ↑ , то есть, некоторые символы должны быть заменены на %XX (%XX%XX), где XX — это код символа в кодировке UTF-8
- ↑ 1 2 3 4 5 6 Символ допустим, но при указании прямым текстом несёт специальное синтаксическое значение
- ↑ Следует отметить, что MediaWiki избегает кодирования пробела как %20, вместо этого он везде заменяется символом подчёркивания «_». Многие поисковики заменяют пробел на символ «+».
- ↑ например, когда ссылка будет отображаться пользователю простым текстом
- ↑ Конвертер магнита (magnet converter)
- ↑ Если ссылку на хаб URI кодировать, то она не будет корректно распознаваться Direct Connect клиентом. Поэтому она вставляется в исходном виде и только в конце magnet-ссылки
- ↑ Shareaza например
- ↑ Ссылка находится в предпоследнем поле xs магнет-ссылки и URI кодирована, поэтому не похожа на исходный вариант.
- ↑ magnet-test.c in trunk/libtransmission — Transmission
- ↑ magnet.c in trunk/libtransmission — Transmission