Odpowiedzi:
Bądź bardzo ostrożny.
Jeśli masz dowiązanie symboliczne, które jest katalogiem (utworzonym mklink /d
), wówczas użycie del
spowoduje usunięcie wszystkich plików w katalogu docelowym (katalogu, do którego prowadzi łącze), a nie tylko łącze.
ROZWIĄZANIE: rmdir
z drugiej strony usunie tylko link do katalogu, a nie to, na co wskazuje link.
Del
usuwa pliki, a nie foldery. Dlatego nie użyłbyś del
do usunięcia linku.
rmdir
w PowerShell. Zawiń to w cmd
pierwszej kolejności. Zobacz moją odpowiedź poniżej ...
Aby usunąć utworzone w mklink /d
nim dowiązania symboliczne, wystarczy usunąć dowiązanie symboliczne w Eksploratorze.
W przypadku dowiązania symbolicznego do pliku użyj del
. Aby utworzyć dowiązanie symboliczne do katalogu utworzonego za pomocą mklink /d
, użyj rmdir
.
rmdir
linkami z Powershell!
W PowerShell nie używaj rmdir
! Użyj cmd /c rmdir .\Target
zamiast tego. Sam to przetestowałem i potwierdziłem tutaj: http://kristofmattei.be/2012/12/15/powershell-remove-item-and-symbolic-links/
rmdir
jest wewnętrznym poleceniem cmd.exe , dlatego oczywiście wywołuje się go z innych powłok, których potrzebujesz cmd /c
lub cmd /k
. rmdir
w PowerShell jest tylko aliasem doRemove-Item
Jest inne rozwiązanie przetestowane przeze mnie i bezpieczne w użyciu. po prostu dodaj do prawdziwego folderu _ (przykład: foo zamień się w foo_), a następnie po prostu usuń link symbolik, a następnie usuń _ z prawdziwego folderu.
mklink nie może zostać użyty do usunięcia dowiązań symbolicznych. Aby usunąć dowiązanie symboliczne, po prostu usuń je tak, jakbyś usuwał normalny plik. Na przykład, aby usunąć utworzone powyżej dowiązanie symboliczne foo, wprowadź następującą komendę:
Jeśli link jest twardym linkiem do katalogu:
C:\test>rmdir foo
lub JEŻELI link wskazuje na plik (w przeciwieństwie do katalogu)
C:\test>del foo
del /S
ani Eksploratora.
W moim przypadku (Windows 10) po utworzeniu dowiązania symbolicznego za pomocą
MKLINK /D "C:\Users\username\Dropbox\MyProject" "C:\SourceProject"
a usuwanie poprzez usuwanie za pomocą eksploratora plików lub klawisza usuwania z klawiatury usuwa również oryginalny katalog .
Co należy zrobić, to usunąć łącze za pomocą wiersza polecenia.
C:\Users\username\Dropbox>rd /s MyProject
Szczegółowe informacje na temat polecenia rd: https://docs.microsoft.com/en-us/windows-server/administration/windows-commands/rd
Zainstalowałem to rozszerzenie powłoki powłoki . Dzięki temu masz 2 metody.
Utwórz go za pomocą menu kontekstowego, jak pokazano, i usuń za pomocą eksploratora plików.
Przetestuj w folderze takim C:\Windows\Logs
jak pokazano lub podobny. Właśnie tworzę katalog wszystkich możliwych lokalizacji plików tymczasowych do usunięcia i chciałem centralnego folderu, w którym mógłbym monitorować ich rozmiar za pomocą dowiązań symbolicznych.
Uwaga: biały ekran to tylko UAC .
Najbezpieczniejszym sposobem nieudokumentowanym tutaj AFAIK .
Na utworzonym dowiązaniu symbolicznym ( w powyższych krokach ) kliknij tym razem prawym przyciskiem myszy i kliknij właściwości, a następnie przejdź do Link Propertieskarty.
Uwaga: To rozszerzenie powłoki dodało tę kartę.
Zanim przejdę dalej, wiele więcej informacji można znaleźć tutaj , również na stronie głównej są wersje x64 i 32bit .
Aby kontynuować, możesz tutaj dodać wszystko do pola docelowego, o ile różni się ono od pierwotnego celu.
Oto cel z celem C:\Windows\Logs_
, zauważ dodatkowe _
na końcu.
naciśnij OK
Możesz to sprawdzić ponownie, wykonując powyższe 1-3 kroki powyżej, aby upewnić się, że się zablokował, tym razem pojawi się komunikat o błędzie po kliknięciu Link Propertieskarty, więc link jest zepsuty.
Można teraz bezpiecznie (r) usunąć łącze symboliczne niż metoda 1 IMHO.
Ale! Obie metody działają tutaj, więc zależy to wyłącznie od wyboru użytkownika. Podoba mi się metoda właściwości, na którą szczęśliwie się natknąłem, więc masz 100% pewności, że link został zerwany, wykonując krok 4 powyżej.
Oto mój prezent tworzenia dowiązania symbolicznego prawym przyciskiem myszy, przeciągania folderu do innego i wybierania opcji utworzenia dowiązania symbolicznego w podmenu.
Aby usunąć, po prostu wykonaj 1-5 kroków powyżej metody 2 lub postępuj zgodnie z metodą 1.
Jak utworzyć i usunąć dowiązanie symboliczne za pomocą metody właściwości
Uwaga: biały ekran to tylko UAC .