كيف يمكنني تحديد دليل العمل للبينك
-
18-09-2019 - |
سؤال
هل هناك طريقة لتحديد دليل القيادة في بيثون subprocess.Popen()
?
علي سبيل المثال:
Popen('c:\mytool\tool.exe', workingdir='d:\test\local')
Script My Python موجود في C:\programs\python
هو ممكن لتشغيل C:\mytool\tool.exe
في الدليل D:\test\local
?
كيف يمكنني تعيين دليل العمل لعملية فرعية؟
المحلول
subprocess.Popen
يأخذ cwd
جدال لتعيين دليل العمل الحالي؛ سوف ترغب أيضا في الهروب من خطاكي الخلفية الخاصة بك ('d:\\test\\local'
)، او استعمل r'd:\test\local'
بحيث لا يتم تفسير الخلفية على أنها تسلسل الهروب من قبل بيثون. الطريقة التي لديك كتبها، \t
سيتم ترجمة الجزء إلى التبويب.
لذلك، يجب أن تبدو خطك الجديد:
subprocess.Popen(r'c:\mytool\tool.exe', cwd=r'd:\test\local')
لاستخدام مسار البرنامج النصي Python الخاص بك ك CWD، import os
وتحديد CWD باستخدام هذا:
os.path.dirname(os.path.realpath(__file__))
لا تنتمي إلى StackOverflow