Назад | Перейти на главную страницу

Как создать символическую ссылку (жесткую ссылку) в CMD.exe

Мне нужно сделать это без установки ПО ...

Любые идеи?

MSDOS (cmd.exe) в Windows XP

Вы говорите о MS-DOS или Windows XP?

Поскольку, скорее всего, вы просто говорите об этом из командной строки в Windows XP, я сначала отвечу на этот случай ...> smile <

На томе NTFS под Windows XP вы можете использовать инструмент "fsutil" для создания жесткой ссылки:

fsutil hardlink create <destination filename> <source filename>

И источник, и место назначения должны находиться на одном томе NTFS.


MS-DOS поддерживает только файловую систему FAT (в различных вариантах). FAT «официально» не поддерживает жесткие ссылки. Вы можете создать эффект жесткой ссылки, имея две записи каталога, которые относятся к одной и той же цепочке FAT. Однако это будет обнаружено программой CHKDSK как «ошибка» и исправлено.

Если вы не возражаете против манипулирования структурой каталогов вручную с помощью DEBUG, вы можете сделать это без установки какого-либо программного обеспечения. Было бы некрасиво, но сработало бы.

Однако, как я сказал, технически незаконно иметь две записи каталога, указывающие на одну и ту же цепочку FAT. Запуск программы дефрагментации диска на таком томе может привести к повреждению файловой системы. CHKDSK определенно воспримет такую ​​«жесткую ссылку, созданную присяжными», как ошибку файловой системы.

Жесткая ссылка fsutil работает только для файлов. Если вы хотите сделать ссылку на каталог, вы можете использовать соединение из пакета sysinternals.

Имейте в виду: если вы попытаетесь удалить ссылку, содержимое целевого каталога также будет удалено. Чтобы удалить ссылку, вы должны использовать juncion -d переключатель.

Вы могли распознать ссылки в Total commander: они имеют другой значок, чем каталоги. В проводнике Windows эти ссылки выглядят так же, как и любой каталог.

linkd.exe находится в комплекте ресурсов Windows 2003. Я только что протестировал это, и он работает лучше, чем соединения NTFS. Если вы можете скачать linkd.exe и заставить его работать на XP, у вас все будет готово.

Во-первых, вам лучше знать, что cmd.exe НЕ MS-DOS, и что в наши дни не осталось остатков DOS ни в одной из версий Windows. DOS умерла вслед за Windows 95/98 / ME, XP и ее преемники были построены на NT, в которой никогда не было DOS. cmd.exe - это собственное приложение Windows, которое внешне выглядит как командная строка и способно принимать команды, аналогичные старым командам DOS, но это НЕ ДОС.

Во-вторых, прежде чем приступить к созданию жестких ссылок в Windows, вы захотите прочитать и понять следующее: http://blogs.msdn.com/oldnewthing/archive/2009/09/28/9900082.aspx

Наконец, чтобы выполнить грязную работу, используйте fsutil, как описывает Эван выше, или как описано здесь: http://www.microsoft.com/resources/documentation/windows/xp/all/proddocs/en-us/fsutil.mspx?mfr=true