Uzantısı bat ,cmd , Vbs yada Ps1 (powershell)... gibi dosyalar script dosyaları olup kullanıcının belirli işlemleri otomatikleştirmesini sağlarlar ve dolayısı ile ileri düzey bilgisayar kullanıcıları ve sistem
yöneticilerine zaman kazandırmak amacıyla sunulmuş betik (Script) uzantılarıdır. Bir Script dili ile bir programlama dili arasındaki temel fark ; programlama dillerini makine diline dönüştürmek için bir derleyici kullanır,Script dilleri ise bir yorumlayıcı kullanır. Mesela JavaScript, HTML içine dahil edildikten sonra İnternet tarayıcısı (Mesela Chrome) tarafından yorumlanmalıdır.Oysa Programlama dilleri ile oluşturulmuş exe lerin, başka bir dil veya uygulama tarafından yorumlanması gerekmez.Tüm script dilleri programlama dilleri olmasına rağmen, tüm programlama dilleri script dili değildir. Windows 10 da oluşturduğunuz bir Vbscript veya bat dosyası çıktısındaki türkçe karakterler bozuksa sorunu aşağıdaki yöntemlerle çözebilirsiniz.
Vbscript (vbs) dosyalarında Türkçe karakter problemi
Bildiğiniz üzere Windows 10 sürüm 1903'ten beri varsayılan kodlama türü olarak ANSI yerine UTF-8 kullanmaktadır. Bu durum özellikle Vbscriptlerde türkçe karakter sorununa sebep olmaktadır . Mesela soldaki script varsayılan UTF-8 ile kaydedilmiş bir Vbscript çıktısıdır, eğer bu scripti Not defteri ile açıp Kodlama türünü ANSI yapıp yeniden kaydederseniz Türkçe karakterlerin düzeldiğine şahit olursunuz.
Gel gelelim bat veya cmd dosyalarında üstteki çözüm işe yaramamaktadır. Bu konuda verilen çözüm önerilerini sırası ile deneyelim. Mesela aşağıdaki gibi bir .bat dosyamız olsun.
@Echo Off copy sordum.txt "D:\Program Files\Microsoft Office\Office16" echo İşlem başarılı pause
echo ile ekrana yazdırmak istediğimiz kısım , kodlama türünü ANSI de yapsak varsayılan UTF-8 i de kullansak bozuk çıkmaktadır.
Çözüm önerisi olarak kodlara chcp 1252 veya chcp 65001 eklenmesi önerisi var lakin onlarda işe yaramamaktadır. (Aşağıdaki resim)
Wordpad ile bat veya Cmd Türkçe karakter sorununa çözüm
1. Türkçe karakterleri bozuk bat veya cmd dosyasının uzantısını .txt yapın
2. Ardından bu dosyayı sağ tıklayın ve Wordpad ile aç deyin
3. Dosya - Farklı kaydet kısmından Metin Belgesi MS-DOS biçimi (*.txt) kısmını seçin
Son olarak ta kaydedilen bu dosyanın uzantısını bat veya cmd yapın. Çalıştırdığınızda Türkçe karakter sorunu çözülmüş olacaktır.
Notepad ++ ile bat veya Cmd Türkçe karakter sorununa çözüm
Bu çözüm için Notepad ++ kullanılması gerekiyor . Sırası ile aşağıdaki adımları uygulayın :
1. Bozuk karakterli bat veya Cmd dosyasını Notepad++ ile açın
2. Üst menüden sırası ile Kodlama - Karakter Takımı - Türkçe - OEM 857 kısımlarını seçin
Ardından yazıda bozulma olduysa tekrar düzeltin ve kaydedin , bat veya cmd dosyasını çalıştırdığınızda karakterlerin düzgün göründüğüne şahit olacaksınız.
Bat dosyası hazırlarken 8 karakter zorluğu
8.3 dosya adı , kısa dosya adı veya SFN olarak da adlandırılır ve DOS'un eski sürümleri ve Windows 95 ve Windows NT 3.5'ten önceki Microsoft Windows sürümleri tarafından FAT dosya sisteminde kullanılan bir dosya adı kuralıdır. Ayrıca, modern Microsoft işletim sistemlerinde , eski programlarla uyumluluk için uzun dosya adına alternatif olarak kullanılır. Buda size şöyle sıkıntı çıkartabilir.
Sorun: Bir bat dosyası yapıp tek tıkla bir exe dosyasını "C:\Program Files\Microsoft Office\Office12" içerisine kopyalamam gerekiyor ben aynı klasördeki kopyalanacak exe dosyasıyla içinde "copy dosyaismi.exe C:\Program Files\Microsoft Office\Office12" yazılı bat dosyasını çalıştırıp kopyalama yapamadım. ne yapmam lazım ?
Çözüm: DOS un eski sürümlerinde bat dosyası 8 karakterden uzun kelimeleri tanımamaktadır göndermek istediğiniz klasörün adresini almak için windowsun içindeki command.com dosyasını ilgili adrese (örneğimizde C:\Program Files\Microsoft Office\Office12) kopyalayıp tıklayın çıkan pencere sizin bat dosyasına yazacağınız adrestir.
yani adresin böyle yazılması gerekiyor..
C:\PROGRA~1\Micros~2\office12
Komut istemi (Cmd) Ekranında Türkçe Karakter Sorunu
Eğer yine eski windows sürümlerini kullanırken Dos Ekranında Türkçe Karakter Sorunu yaşarsanız, ki genellikle Combofix kullanımından sonra böyle bir durum oluşabiliyor
Aşağıdaki kodu not defterine yapıştırın farklı kaydet deyip bir isim verin ve uzantısı .reg olacak şekilde kaydedin ardından çalıştırın
Windows Registry Editor Version 5.00 [HKEY_CURRENT_USER\Console] "CodePage"=dword:00000359
Böylece üstteki kayıt registry'e eklenecek ve Eski windowslarda meydana gelen bu sorun düzelecektir.
- Not defterinin varsayılan Kodlama türünü değiştirin Burada
- Sağ tuşa program eklemeyi otomatikleştirmek Burada
- Sağ tuş yeni menüsünde Wordpad yok Burada
- Yeni dosya veya klasör ismini kendiniz belirleyin Burada
4 Mayıs 2010 tarihli başlık güncellenmiştir.
(Başlığın güncellenmesinde emeği geçen Takipçilerimizden Hüseyin Arkadaşımıza Teşekürler)
Hocam Selam öncelikle benim bir txt dosyam var. İçinde değişik karakterli semboller var. Nasıl düzelticem. Yardım ederseniz çok sevinirim .
Karakter bozukluğu olan arkadaşların işine yarayacaktır , teşekkürler.
Cmd veya bat dosyalarında Türkçe karakterleri doğru görüntülemek ve düzenlemek için ben kodların ilk satırına "chcp 65001" yazıyorum ve dosyayı bu koda uygun olması için UTF-8 olarak kayd ediyorum.
Selamlar
Bilgi verici teşekkür ederiz.
Geri bildirim için teşekkürler
Notepad++ ile OEM 857 ayarı çözdü. Teşekkürler.