由python脚本运行的批处理文件拒绝写入.txt文件

2024-04-20 09:57:18 发布

您现在位置:Python中文网/ 问答频道 /正文

我已经确保批处理文件实际上正在运行,python+batch文件的目的是自动映射到一个未使用的驱动器号中的共享驱动器位置,然后在python脚本的其余部分完成后,断开与共享驱动器的连接。当我运行python脚本时,共享驱动器被正确映射,只是.txt文件没有被创建

我也试着在运行后终止子进程,但是没有成功,文本文件仍然没有被写入

import configparser as cfgp
import sys
import os
import subprocess

drive_controller_path = os.path.abspath("bat_files/drive_controller.bat")

pro = subprocess.Popen(drive_controller_path)

这基本上是python脚本中唯一相关的部分

@echo off

>temp.txt (
    net use * "\\IPADDRESS\FILEPATH" /user:MYDOMAIN\MYUSERNAME MYPASSWORD
)

set /p var=<temp.txt

set drive_letter=%var:~6,2%
echo %drive_letter% >>drive_letter.txt

cmd /k

这是有问题的批处理文件

当我运行drive_controller.bat时,只要点击它,文本文件就会被创建,没有问题!非常困惑。谢谢你们的帮助


Tags: 文件pathimportechotxt脚本osdrive
1条回答
网友
1楼 · 发布于 2024-04-20 09:57:18

原来是的,.txt文件被写到了python脚本所在的目录中。为了让一切正常工作,简单的解决方法是将.bat文件移到同一个目录,并对调用进行一些小的更改。再次感谢约翰·戈登

相关问题 更多 >