mklink не установлен в Windows 7?

40

Я только что установил Windows 7 Pro, и я настраиваю его в соответствии со своими предпочтениями. Я иду, чтобы установить символическую ссылку (так как он поддерживает символические ссылки).

Но у меня, похоже, нет mklinkпрограммы C:\Windows\system32.

В режиме администратора в Powershell:

PS C:\> mklink
The term 'mklink' is not recognized as the name of a cmdlet, function, script file, or operable program. Check the spel
ling of the name, or if a path was included, verify that the path is correct and try again.
At line:1 char:7
+ mklink <<<<
    + CategoryInfo          : ObjectNotFound: (mklink:String) [], CommandNotFoundException
    + FullyQualifiedErrorId : CommandNotFoundException
Пол Натан
источник
Я не могу найти этот файл %WINDIR%ни под одним, но работа mklinkна моей стороне просто работает. Я думаю, это встроенная системная команда. Это говорит mklinkне распознанная команда или что-то?
kizzx2
Аналогичный вопрос был задан в SO. См. Stackoverflow.com/questions/894430/… для получения дополнительной информации и обходных путей.
Кез
@kez: Хм ... не думаю, что ТАК лучшее место, чтобы спросить это. :: пожимает плечами ::
Пол Натан
PowerShell выдаст эту ошибку, но командная строка работает.
Росди

Ответы:

59
cmd / c mklink [аргументы]

можно использовать для вызова cmd.exeвстроенных

grawity
источник
Вышеупомянутая строка не работает в cmd на win7, хотя открытие cmd и затем mklink работает.
mosh
1
это работает также на Windows 10 Pro
bluantinoo
2
alias mklink='cmd //c mklink'для Git Bash; stackoverflow.com/a/21907301/3821804
GingerPlusPlus
14

Решение состоит в том, что mklink является встроенным в cmd.exe. Поэтому Powershell не может напрямую получить к нему доступ.

Отрицательная слава тому, кто придумал это.

Пол Натан
источник
8

PowerShell не является полной заменой CMD. Многие функции CMD не работают в PS. Переключитесь на CMD для запуска mklink

Уэйн Шеппард
источник
Да, я тебя слышу. Довольно разочаровывает, хотя.
Пол Натан