mklink nie jest zainstalowany w systemie Windows 7?

40

Właśnie zainstalowałem system Windows 7 Pro i konfiguruję go zgodnie z własnymi preferencjami. Idę ustawić link symboliczny (ponieważ obsługuje on dowiązania symboliczne).

Ale chyba nie mam tego mklinkprogramu C:\Windows\system32.

W trybie administratora w 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
Paul Nathan
źródło
Nie mogę znaleźć tego pliku pod %WINDIR%żadnym z nich, ale działa mklinkpo mojej stronie po prostu działa. Myślę, że to wbudowane polecenie systemowe. Czy mówi, że mklinknie jest to rozpoznane polecenie czy coś takiego?
kizzx2
Podobne pytanie zadano w SO. Aby uzyskać więcej informacji i obejść, zobacz stackoverflow.com/questions/894430/ ...
Kez
@kez: Hunh ... nie sądziłem, że SO jest najlepszym miejscem do tego. :: wzruszenie ramionami
Paul Nathan
Program PowerShell wyświetli ten błąd, ale wiersz polecenia działa.
Rosdi,

Odpowiedzi:

59
cmd / c mklink [argumenty]

może służyć do wywoływania cmd.exewbudowanych funkcji.

grawitacja
źródło
Powyższa linia nie działa w cmd na win7, chociaż otwarcie cmd, a następnie mklink działa.
mosh
1
działa to również w systemie Windows 10 Pro
bluantinoo
2
alias mklink='cmd //c mklink'dla Git Bash; stackoverflow.com/a/21907301/3821804
GingerPlusPlus
14

Rozwiązaniem jest to, że mklink jest wbudowany w cmd.exe. Dlatego PowerShell nie może uzyskać do niego bezpośredniego dostępu.

Negatywne pochwały dla każdego, kto to wymyślił.

Paul Nathan
źródło
8

PowerShell nie jest kompletnym zamiennikiem CMD. Wiele funkcji CMD nie działa w PS. Przełącz na CMD, aby uruchomić mklink

Wayne Sheppard
źródło
Tak, słyszę cię. Bardzo frustrujące.
Paul Nathan