Sembolik bir linki nasıl silebilirim?


322

Kullanarak bir sembolik bağlantı oluşturdum mklink. Şimdi değiştirmem gerekiyor ama nasıl sileceğimi çözemiyorum, böylece doğru şekilde yeniden oluşturabiliyorum.

Yanıtlar:


557

Çok dikkatli ol.

Dizin olan sembolik bir bağlantınız varsa (ile yapılır mklink /d) kullanmak del, yalnızca dizinden ziyade, hedef dizindeki tüm dosyaları (bağlantının işaret ettiği dizin ) siler.

ÇÖZÜM: rmdir Öte yandan, bağlantının ne anlama geldiğini değil, yalnızca dizin bağlantısını silecektir.


103
Yanlışlıkla bunu yaptıktan sonra (hedef klasörün tüm içeriğini sildi), bu önemli bir ipucu.
Simon Gillbee,

4
Bu cevap tamamen doğru değil. Delklasörleri değil dosyaları siler. Bu nedenle, delbağlantıyı silmek için kullanmazsınız .
AMissico

12
Ancak rmdirPowerShell'de kullanmayın . cmdÖnce sarın . Aşağıdaki cevabımı görün ...
northben

4
Windows gezgini ile silersem nasıl olur ????
Cheung

8
Orada Microsoft Çalışanlar tekrar gitmek, sadece hayatımı, kariyerimi ve Windows işletim sistemimi mahvetmeye çalışıyor.
ThorSummoner

62

Dizin ile oluşturulan sembolik bağları kaldırmak mklink /d, sadece sembolik bağın kaşif içerisinden silinmesi güvenlidir.


27
İnsanlara, Windows Gezgini'nden sembolik bağlantıyı silmenin saklandığını söylemek için + 1.
AMissico

3
Doğru. Onu her zaman yaparım. Sadece şimdi tekrar denedim.
ddelrio1986

2
Bu sadece benim için çalıştı. Bağlantılı olan kaynak klasörü değil bağlantıyı sildim. belki bu yakalamak.
R Hughes,

3
Rightclick -> Delete ile sadece silmek güvenlidir. Bu bağlantılı klasörü SİLMEZ.
Hexo

mklink / d Windows 7'de benim için işe yaramadı .. Yine de eski bir sürümünü kullanıyor olabilirim
abelito

47

Bir dosyaya sembolik bağlantı için kullanın del. İle yapılan bir dizine bağlantı için mklink /d, kullanın rmdir.


5
Uyarı: "del" sadece bağlantıyı değil dosyayı da siler.
WoodenKitty

6
@Tristan'ın uyarısı doğru değil, bu cevap doğru. Windows 7'de test edildi.
jiggunjer

1
Windows 7 SP1'de (64-bit), sıradan Windows GUI 'delete' seçeneği kullanılarak Windows Gezgini'nde bir dosyaya (örneğin, MKLINK kullanılarak oluşturulan) veya bir dizine (MKLINK / D) işaret eden sembolik bir bağlantı silinebilir , olmadan hedef silme. Hatta bir KAVŞAK Explorer'da sildiyseniz (örneğin mklink / J komutunu kullanarak oluşturulan), hedef dizini ne de içeriğini silmez. Boş değil, hedef dizini bile komut DEL kullanılarak silinemez kavşak komut isteminde. Bugün test edildi.
Ed999,

Windows Server 2012'de bu, bağlantı bağlantımın işaret ettiği dizin içeriğini kaldırdı ...
C Bauer

İnsanları rmdirPowershell'den bağlantı kurmamaları konusunda uyarmalısın !
NH.

28

Powershell'de kullanmayın rmdir! Yerine cmd /c rmdir .\Targetkullanın. Bunu kendim test ettim ve burada onayladım: http://kristofmattei.be/2012/12/15/powershell-remove-item-and-symbolic-links/


Bu blog, bağlantının işaret ettiği asıl dizin olan ve halkı genel olarak bağlantıyı silerken silmekten kaçınmak isteyen "Hedef" in anlamını karıştırıyor.
kreemoweet 22:15

2
rmdircmd.exe'nin iç komutudur , bu yüzden açıkçası ihtiyacınız olan diğer mermilerden çağırmak için cmd /cveya cmd /k. rmdirPowerShell içinde sadece bir takma Remove-Item
addır

24

Benim tarafımdan test edilmiş ve kullanımı güvenli başka bir çözüm var. sadece gerçek klasöre _ (örnek: foo foo_ olur) ekleyin, sonra symbolik bağlantınızı silin, ardından gerçek klasörünüzden _ çıkarın.


2
evet, powershell'in rmdir hakkında ** t
vermediğini bildikten

Bu akıllıca bir önlemdir. +1
Hanna

Uyarı: Bu MIGHT’ın Win10’da çalışmayacağını düşünüyorum çünkü yeniden adlandırmada kısayollar düzeltiliyor. (En azından klasik Kısayollar) Yine de test edilmedi.
Hexo

Bu durumda sadece yaptım. Hedef klasörü yeniden adlandırdıktan sonra, ulaşmaya çalıştığımda symbolink bağlantısı başarısız oldu, böylece endişelenmeden silebildim.
Andrew,

21

mklink sembolik bağları silmek için kullanılamaz. Sembolik bir bağlantıyı kaldırmak için, normal bir dosyayı kaldırıyormuş gibi silmek yeterlidir. Örneğin, yukarıda oluşturulan foo sembolik bağlantısını silmek için aşağıdaki komutu girin:

Bağlantı bir dizine sert bağlantı ise:

C:\test>rmdir foo

veya başka bir deyişle, bağlantı bir dosyaya işaret ediyorsa (dir.

C:\test>del foo

Kaynak: http://www.mydigitallife.info/2007/05/22/create-symbolic-links-hard-links- ve- directory-junctions-in-vista-with- mklink/


2
Sadece del /Sveya Explorer ile silmediğinizden emin olun .
Merhaba71,

1
Bir dizine yapılan bir bağlantı için del kullanmak işe yaramaz ve bunun yerine klasörün içeriğini silmeye çalışır çünkü aşağıdaki eddyq'in cevabına bakınız.
JPIerson

2
Dizinlere sabit bağlantılar mevcut değil. Sanırım sembolik bağlantı demek istedin.
Brilliand

0

Benim durumumda (Windows 10), kullanarak sembolik bağ oluşturduktan sonra

MKLINK /D "C:\Users\username\Dropbox\MyProject" "C:\SourceProject"

dosya gezgini veya klavye silme tuşunu kullanarak silme ve silme de orijinal dizini siler .

Yapmanız gereken, bağlantıyı komut istemi ile kaldırmaktır.

C:\Users\username\Dropbox>rd /s MyProject

Rd komutuyla ilgili ayrıntılar için: https://docs.microsoft.com/en-us/windows-server/administration/windows-commands/rd


0

En basit yöntem, klasörü (sembolik bağlantının işaret ettiği) başka bir yere (üst klasöre) taşımak ve ardından sembolik bağlantıyı silmektir. Hiçbir dosya zarar görmeyecek!


0

Bu Link Kabuk Uzantısını kurdum . Bununla, 2 yönteminiz var.

YÖNTEM 1

Bağlam menüsünü gösterildiği gibi kullanarak ve dosya gezgini ile silerek oluşturun.

C:\Windows\LogsGösterildiği gibi veya benzer bir klasörle test edin. Sadece silinecek geçici dosyaların tüm konumlarının bir dizinini oluşturuyorum ve sembolik bağlantılar aracılığıyla bunların boyutunu izleyebileceğim merkezi bir klasör istedim.

Lütfen dikkat: Ekranın beyazlaşması sadece UAC .

explorer yönteminden sil

YÖNTEM 2

Burada belgelenmemiş en güvenli yol AFAIK .

Oluşturulan sembolik link üzerinde ( yukarıda gösterilen adımlarda ), bu sefer sağ tıklayın ve özellikleri tıklayın ve ardından Link Propertiessekmeye gidin.

Not: Bu kabuk uzantısı bu sekmeyi ekledi.

Devam etmeden önce, burada ana sayfadaki x64 ve 32bit sürümleri hakkında daha fazla bilgi bulunabilir .

Dolayısıyla, devam etmek için, burada orijinal hedeften farklı olduğu sürece hedef alana bir şey ekleyebilirsiniz .


  1. İşte hedef olarak bir önceki gibi C:\Windows\Logs önce hedef

  2. İşte sonra mümkün hedefiyle bir var C:\Windows\Logs_, fark ekstra _sonunda.

    sonra hedef

  3. Basın OK

  4. Sıkışmış olduğundan emin olmak için yukarıdaki 1-3 aynı adımı geçerek bunu tekrar kontrol edebilirsiniz, bu sefer Link Propertiessekmeyi tıkladığınızda bir hata mesajı alacaksınız, böylece bağlantı koptu.

  5. Artık sembolik bağlantıyı yöntem 1 IMHO'dan silmek güvenlidir (r).


Fakat! Her iki yöntem de burada çalışır, bu yüzden tamamen kullanıcının seçimine bağlıdır. Mutlu bir şekilde tökezlediğim özellik yöntemini seviyorum, bu yüzden yukarıdaki adım 4'ü kullanarak bağlantının koptuğundan% 100 emin olursunuz .

İşte bana sağ fare düğmesiyle bir klasörü diğerine sürükleyerek sembolik bir bağlantı oluşturup alt menüde sembolik bir bağlantı oluşturma seçeneğini seçmemden oluşan bir gif.

Silmek için, yalnızca yöntem 2'nin 1-5 adımlarını izleyin veya yöntem 1'i izleyin.

Özellikler yöntemini kullanarak sembolik bir bağlantı oluşturma ve silme

Lütfen dikkat: Ekranın beyazlaşması sadece UAC .

Özellikler yöntemini kullanarak syn linkleri oluşturma ve silme konusunda gif

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.