تحويل مسار يونكس إلى مسار DOS
سؤال
ولدي متغير يخزن مسار يونكس، على سبيل المثال:
typeset unixpath=/foo/bar/
ولقد لتحويله إلى مسار DOS باستخدام KornShell (KSH) البرمجة:
dospath=\\\\foo\\\\bar\\\\
المحلول
وجرب:
dospath=`echo $unixpath | sed 's/\//\\\\/g'`
<الفرعية> ديفيد Wolever للحصول على تذكيري لاستخدام $ للوصول إلى قيمة المتغير ! الفرعي>
نصائح أخرى
إذا كان لديك <م> ksh93 م>:
ksh-M 93t 2008-11-04$ unixpath=/foo/bar/
ksh-M 93t 2008-11-04$ print ${unixpath//\//\\\\\\\\}
\\foo\\bar\\
ووAT & T ksh93 ويندوز يسمح لك لوضع علامة المتغيرات للتحويل التلقائي مع "-H تنضيدها ':
و$ تنضيدها منزل ح = $ الرئيسية && الطباعة $ المنزل = $ الرئيسية C: \ المستخدمين \ هينك = / الوطن / هينك
وكنت قد أضاف للتعليق على الجواب eleven81، ولكن ليس لدي نقاط
ولجعله قليلا أكثر قابلية للقراءة، وكيف حول استخدام محدد سد بديل
وأي بمعنى.
dospath=`echo $unixpath | sed 's./.\\\\.g'`
لا تنتمي إلى StackOverflow