Dikkat edilmesi gereken bazı şeyler:
Eğer varsa çift tıklama toplu iş dosyası %0
tırnak içine alınacaktır. Örneğin, bu dosyayı şu şekilde kaydederseniz c:\test.bat
:
@echo %0
@pause
Çift tıklandığında çıktı ile yeni bir komut istemi açılır:
"C:\test.bat"
Ancak, önce bir komut istemi açar ve doğrudan bu komut isteminden çağırırsanız, yazdığınız%0
her şeyi belirtir . Siz yazarsanız , hiçbir tırnak yazmamanız nedeniyle çıktısının tırnak işareti olmaz:test.bat
Enter%0
c:\>test.bat
test.bat
Eğer yazarsanız test
Enter, %0
hiçbir uzantı yazmamanız nedeniyle çıktısının da uzantısı olmayacaktır:
c:\>test
test
Aynı tEsT
Enter:
c:\>tEsT
tEsT
Yazarsanız "test"
Enter, çıktısının %0
tırnak işaretleri olur (yazdığınızdan beri), ancak uzantı içermez:
c:\>"test"
"test"
Son olarak, yazarsanız "C:\test.bat"
, çıktı tam olarak çift tıklamış gibi olur:
c:\>"C:\test.bat"
"C:\test.bat"
Bunların olası tüm değerler olmadığını unutmayın %0
çünkü komut dosyasını diğer klasörlerden çağırabilirsiniz:
c:\some_folder>/../teST.bAt
/../teST.bAt
Yukarıda gösterilen tüm örnekler de etkilenecektir %~0
, çünkü çıktısı %~0
basitçe %0
eksi tırnak (varsa) çıktısıdır .
echo %~dp0
komut satırında çalışmaz, yalnızca toplu iş dosyasında. Duh!