Windows Komut İstemi ve PowerShell gibi komut satırı ortamları, komutları ve bağımsız değişkenleri ayırmak için boşluk kullanır; ancak dosya ve dizin adları da boşluk içerebilir. İçinde boşluk bulunan bir dosya yolunu belirtmek için bu yoldan "kaçmanız" gerekir.
Neden boşluklardan kaçalım?
“Kaçış” ya da bir karakterden kaçmak anlamını değiştirir. Örneğin, bir boşluktan kaçmak, kabuğun bunu, komut satırı argümanlarını ayıran özel bir karakter yerine bir boşluk karakteri olarak ele almasına neden olur.
Bir metin dosyanız olduğunu ve içeriğini görüntülemek istediğinizi varsayalım. Bunu type komutuyla yapabilirsiniz. Metin dosyasının C:\Test\File.txt konumunda bulunduğunu varsayarsak , Komut İstemi'ndeki aşağıdaki komut içeriğini gösterecektir:
type C:\Test\File.txt
Peki ya aynı dosya C:\Test Folder\Test File.txt konumundaysa ? Aşağıdaki komutu çalıştırmayı denerseniz işe yaramaz; dosya yolundaki boşluklar yolu kapatıyor.
type C:\Test Folder\Test File.txt
Komut satırı, C:\Test adlı bir dosyayı aramaya çalıştığınızı düşünüyor ve " belirtilen yolu bulamıyor " (belirtilen yolu bulamıyor) diyor .

Komut satırı belirtilen yolu bulamıyor
Windows'ta boşluklardan kaçmanın 3 yolu
Windows'ta dosya yollarından kaçmanın 3 farklı yolu vardır:
- Yolu (veya bir kısmını) çift tırnak işareti ("") içine alarak.
- Her boşluğun önüne bir düzeltme işareti karakteri (^) ekleyerek. (Bu yalnızca Komut İstemi/CMD'de çalışır ve her komutta çalışmıyor gibi görünmektedir).
- Her boşluğun önüne bir vurgu karakteri (`) ekleyerek. (Bu yalnızca PowerShell'de çalışır, ancak her zaman çalışır).
Bu makale, her yöntemin nasıl kullanılacağı konusunda size rehberlik edecektir.
Yolu tırnak içine alın
Windows'un bir dosya yolunu düzgün şekilde işlemesini sağlamanın standart yolu, onu çift tırnak işareti ("") karakterleri arasına almaktır. Örneğin yukarıdaki örnek komutla komut şu şekilde çalıştırılacaktır:
type "C:\Test Folder\Test File.txt"
İsterseniz yolun bazı kısımlarını tırnak içine alabilirsiniz. Örneğin o klasörde File.txt adında bir dosyanız olduğunu varsayalım . Aşağıdakileri çalıştırabilirsiniz:
type C:\"Test Folder"\File.txt
Ancak bu gerekli değildir. Çoğu durumda, yolun tamamında tırnak işaretlerini kullanabilirsiniz.
Bu çözüm hem geleneksel Komut İstemi (CMD) ortamında hem de Windows PowerShell'de çalışır.
![Windows komut satırında dosya yollarındaki boşluklardan nasıl kaçılır Windows komut satırında dosya yollarındaki boşluklardan nasıl kaçılır]()
Yolu tırnak içine alın
Boşluktan önce düzeltme karakterini (^) kullanın
Komut İstemi'nde düzeltme karakteri (^) teorik olarak boşluklardan kaçmanıza izin verecektir. Dosya adındaki her boşluğun önüne eklemeniz yeterlidir. (Bu karakteri klavyenizdeki sayı satırında bulacaksınız. Düzeltme karakterini girmek için Shift + 6 tuşlarına basın ).
Sorun şu ki, bu etkili olmasına rağmen her zaman işe yaramıyor. Komut İstemi'nin bu karakteri ele alması garip.
Örneğin örnek komutla aşağıdaki komutu çalıştırırsanız komut çalışmaz:
type C:\Test^ Folder\Test^ File.txt
![Windows komut satırında dosya yollarındaki boşluklardan nasıl kaçılır Windows komut satırında dosya yollarındaki boşluklardan nasıl kaçılır]()
Yukarıdaki komut çalışmayacak
Öte yandan, dosyanızı doğrudan Komut İstemi'ne yolunu girerek açmayı denerseniz, düzeltme karakterinin boşluktan düzgün şekilde çıktığını görebilirsiniz:
C:\Test^ Folder\Test^ File.txt
![Windows komut satırında dosya yollarındaki boşluklardan nasıl kaçılır Windows komut satırında dosya yollarındaki boşluklardan nasıl kaçılır]()
Düzeltme karakteri boşluklardan düzgün bir şekilde kaçıyor
Peki ne zaman işe yarar? Araştırmaya göre yalnızca bazı uygulamalarda işe yarıyor gibi görünüyor. Kullandığınız komuta bağlı olarak işler değişebilir. Komut İstemi'nin bu karakteri ele alması garip. Kullandığınız komut ne olursa olsun deneyin, işe yarayabilir veya çalışmayabilir.
Tutarlılık sağlamak için makale, Komut İstemi'nde çift tırnak kullanılmasını veya PowerShell'e geçilip aşağıdaki yöntemin kullanılmasını önerir.
Vurgulu karakterler (`) kullanın
PowerShell, vurgu karakterini (`) kaçış karakteri olarak kullanır. Dosya adındaki her boşluğun önüne eklemeniz yeterlidir. (Bu karakteri klavyenizdeki Sekme tuşunun üstünde ve Esc tuşunun altında bulacaksınız ).
type C:\Test` Folder\Test` File.txt
Her vurgulu karakter, takip eden karakterden kaçmak için PowerShell'i gerektirir.
Bunun yalnızca PowerShell ortamlarında çalıştığını unutmayın. Komut İstemi'nde düzeltme karakterini kullanmanız gerekecektir.
![Windows komut satırında dosya yollarındaki boşluklardan nasıl kaçılır Windows komut satırında dosya yollarındaki boşluklardan nasıl kaçılır]()
Vurgulu karakterler (`) kullanın
Linux ve macOS gibi UNIX benzeri işletim sistemlerine aşina iseniz, boşluktan önce ters eğik çizgi karakterini (\) kullanmaya aşina olabilirsiniz. Windows bu karakteri normal dosya yolları için kullanır, dolayısıyla çalışmaz. Düzeltme işareti (^) ve vurgu (`) karakterleri, kullandığınız komut satırı kabuğuna bağlı olarak ters eğik çizginin Windows sürümüdür.
Daha fazla gör: