我想在 Windows 中使用 python 将 csv 文件转换为 dos2unix 格式。
现在我正在通过将 csv 文件放置在工作区(服务器)中并在 putty 中运行命令来手动执行操作。[命令:dos2unix file_received filename]
dos2unix
(据我记得)几乎只删除每行的尾部换行符。因此,有两种方法可以做到这一点。
with open(filename, "w") as fout:
with open(file_received, "r") as fin:
for line in fin:
line = line.replace('\r\n', '\n')
fout.write(line)
或者您可以使用 subprocess 直接调用 UNIX 命令。WARNING:这很糟糕,因为您使用了参数file_received
,人们可能会将可执行命令标记到其中。
import subprocess
subprocess.call([ 'dos2unix', file_received, filename, shell=False])
以上我没有测试过。这shell=False
(默认值)意味着不会为该进程调用 UNIX shell。这很好地避免有人将命令插入参数中,但您可能必须shell=True
为了使命令正常工作。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)