मैंने ऐसा करने के लिए एक बैट फाइल लिखी। फ़ाइल को जहाँ भी आप काम कर रहे हैं या अपने पथ में जोड़ें (या बस अपने कोड के ऊपर रखें, जिससे काम करना आसान होगा)। पहले अपने फ़ाइल पथ पर "चर" असाइन करना याद रखें (यदि आप एक अलग फ़ाइल का उपयोग कर रहे हैं, तो मापदंडों का उपयोग करके देखें)।
कोड क्या करता है:
1) पथ का पहला अक्षर प्राप्त करें, जो ड्राइव है।
2) पहले दो अक्षर निकालें।
3) स्लैश बदलें।
4) यह मुश्किल हिस्सा है: चूंकि लिनक्स संवेदनशील है, इसलिए हमें अपरकेस ड्राइव लेटर को लोअरकेस में बदलना होगा। प्रत्येक को मेल करके ऐसा करें (बेहतर तरीका है तो मुझे बताएं)। आप अनावश्यक ड्राइव अक्षर भी हटा सकते हैं, क्योंकि आपके पास संभवतः दस से अधिक ड्राइव नहीं हैं।
5) अंतिम स्ट्रिंग देने के लिए सब कुछ मिलाएं।
परिणाम:
इनपुट:
E:\myfiles\app1\data\file.csv
आउटपुट (उद्धरण चिह्नों के साथ):
"/mnt/e/myfiles/app1/data/file.csv"
कोड निम्नानुसार है:
@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:
साथ सभी घटनाओं की जगह ले रहा है/mnt/c
(संभवतः अन्य ड्राइव पत्र के लिए, भी), सही?