Risposte:
Essere molto attenti.
Se si dispone di un collegamento simbolico che è una directory (creata con mklink /d
), l'utilizzo del
eliminerà tutti i file nella directory di destinazione (la directory a cui punta il collegamento), anziché solo il collegamento.
SOLUZIONE: rmdir
d'altra parte eliminerà solo il collegamento alla directory, non ciò a cui punta il collegamento.
Del
elimina i file, non le cartelle. Pertanto, non si utilizzerà del
per eliminare il collegamento.
rmdir
in PowerShell. Avvolgilo per cmd
primo. Vedi la mia risposta qui sotto ...
Per rimuovere i collegamenti simbolici di directory creati con mklink /d
esso è sicuro eliminare semplicemente il collegamento simbolico in Explorer.
Per un collegamento simbolico a un file, utilizzare del
. Per un collegamento simbolico a una directory creata con mklink /d
, utilizzare rmdir
.
rmdir
collegarsi a Powershell!
In Powershell, non usare rmdir
! Usa cmd /c rmdir .\Target
invece. L'ho provato io stesso e l'ho confermato qui: http://kristofmattei.be/2012/12/15/powershell-remove-item-and-symbolic-links/
rmdir
è un comando interno di cmd.exe , quindi ovviamente per chiamarlo da altre shell necessarie cmd /c
o cmd /k
. rmdir
in PowerShell è solo un alias diRemove-Item
C'è un'altra soluzione testata da me e sicura da usare. basta aggiungere alla cartella reale _ (esempio: foo diventato foo_) quindi eliminare semplicemente il collegamento symbolik, quindi rimuovere _ dalla cartella reale.
mklink non può essere usato per cancellare collegamenti simbolici. Per rimuovere un collegamento simbolico, eliminalo semplicemente come se stessi rimuovendo un file normale. Ad esempio, per eliminare il collegamento simbolico foo creato sopra, immettere il seguente comando:
Se il collegamento è un collegamento reale a una directory:
C:\test>rmdir foo
altrimenti, SE il collegamento punta a un file (al contrario di una dir)
C:\test>del foo
del /S
o Explorer.
Nel mio caso (Windows 10), dopo aver creato il collegamento simbolico usando
MKLINK /D "C:\Users\username\Dropbox\MyProject" "C:\SourceProject"
e l' eliminazione tramite cancellazione mediante Esplora file o il tasto di eliminazione tastiera elimina anche la directory originale .
Quello che dovresti fare è rimuovere il link tramite il prompt dei comandi.
C:\Users\username\Dropbox>rd /s MyProject
Per dettagli sul comando rd: https://docs.microsoft.com/en-us/windows-server/administration/windows-commands/rd
Ho installato questa estensione Shell di collegamento . Con questo, hai 2 metodi.
Crealo usando il menu contestuale come mostrato ed eliminandolo tramite Esplora file.
Prova con una cartella come C:\Windows\Logs
quella mostrata o simile. Sto solo creando una directory di tutte le possibili posizioni dei file temporanei da eliminare e volevo una cartella centrale in cui potessi monitorarne le dimensioni tramite collegamenti simbolici.
Nota: lo schermo diventa bianco è solo l' UAC .
Il modo più sicuro senza documenti qui AFAIK .
Sul collegamento simbolico creato ( nei passaggi mostrati sopra ), fai clic con il pulsante destro del mouse questa volta e fai clic su Proprietà, quindi vai alla Link Propertiesscheda.
Nota: questa estensione della shell ha aggiunto questa scheda.
Prima di continuare, molte più informazioni possono essere trovate qui , inoltre, sulla homepage sono le versioni x64 e 32 bit .
Quindi, per continuare, qui puoi aggiungere qualsiasi cosa al campo target purché sia diverso dal target originale.
Ecco un dopo con l'obiettivo come C:\Windows\Logs_
, notare il extra _
alla fine.
stampa OK
Puoi verificarlo di nuovo andando sopra gli stessi 1-3 passaggi sopra per assicurarti che si sia bloccato, questa volta riceverai un messaggio di errore quando fai clic sulla Link Propertiesscheda in modo che il collegamento sia ora interrotto.
Ora è sicuro (r) eliminare il collegamento simbolico rispetto al metodo 1 IMHO.
Ma! Entrambi i metodi funzionano qui, quindi dipende interamente dalla scelta dell'utente. Mi piace il metodo delle proprietà su cui mi sono imbattuto felicemente, quindi sei sicuro al 100% che il collegamento venga interrotto usando il passaggio 4 sopra.
Ecco una mia gif che crea un link simbolico con il tasto destro del mouse trascinando una cartella in un'altra e scegliendo l'opzione per creare un link simbolico nel sottomenu.
Per eliminare, basta seguire i 1-5 passaggi precedenti del metodo 2 o seguire il metodo 1.
Come creare ed eliminare un collegamento simbolico usando il metodo properties
Nota: lo schermo diventa bianco è solo l' UAC .