Bunu yapmak için bir yarasa dosyası yazdım. Dosyayı çalıştığınız yere yerleştirin veya yolunuza ekleyin (veya yalnızca kodunuzun üzerine koyun, bu da çalışmak daha kolay olacaktır). Önce dosya yolunuza "değişken" atamayı unutmayın (ayrı bir dosya kullanıyorsanız parametreleri kullanmayı deneyin).
Kod ne yapar:
1) Sürücü olan yolun ilk harfini alın.
2) İlk iki harfi kaldırın.
3) Eğik çizgileri değiştirin.
4) Bu zor kısmı: Linux büyük / küçük harfe duyarlı olduğundan, büyük harf sürücü harfini küçük harfe dönüştürmeliyiz. Bunu her birini eşleştirerek yap (daha iyi bir yol olup olmadığını söyle). Muhtemelen ondan fazla sürücünüz olmadığı için gereksiz sürücü harflerini de kaldırabilirsiniz.
5) Son dizeyi vermek için her şeyi birleştirin.
Sonuç:
Giriş:
E:\myfiles\app1\data\file.csv
Çıktı (tırnak işaretleri ile):
"/mnt/e/myfiles/app1/data/file.csv"
Kod aşağıdaki gibidir:
@echo OFF
set "variable=E:\myfiles\app1\data\file.csv"
set "drive=%variable:~0,1%"
set variable=%variable:~2%
set "variable=%variable:\=/%"
if %drive%==A set "drive=a"
if %drive%==B set "drive=b"
if %drive%==C set "drive=c"
if %drive%==D set "drive=d"
if %drive%==E set "drive=e"
if %drive%==F set "drive=f"
if %drive%==G set "drive=g"
if %drive%==H set "drive=h"
if %drive%==I set "drive=i"
if %drive%==J set "drive=j"
if %drive%==K set "drive=k"
if %drive%==L set "drive=l"
if %drive%==M set "drive=m"
if %drive%==N set "drive=n"
if %drive%==O set "drive=o"
if %drive%==P set "drive=p"
if %drive%==Q set "drive=q"
if %drive%==R set "drive=r"
if %drive%==S set "drive=s"
if %drive%==T set "drive=t"
if %drive%==U set "drive=u"
if %drive%==V set "drive=v"
if %drive%==W set "drive=w"
if %drive%==X set "drive=x"
if %drive%==Y set "drive=y"
if %drive%==Z set "drive=z"
set "variable=/mnt/%drive%%variable%"
echo "%variable%"
@echo ON
C:
ile/mnt/c
(potansiyel olarak çok diğer sürücü harfleri için), doğru mu?