gpt4 book ai didi

Python os.system cp 命令复制空文件

转载 作者:行者123 更新时间:2023-12-01 09:12:20 27 4
gpt4 key购买 nike

目录1:我有一些txt文件和一个xml文件,我想根据txt文件内容在每次迭代中更改它们。

目录 2:我想在每次迭代后将更改的 xml 文件复制到此目录。

执行后,我可以观察到目录 1 中已更改的 xml 文件,其中包含预期的最后一个 txt 文件内容。但是,目录 2 包含具有预期名称的空文件。我的 cp 命令可能有问题?你能帮忙吗?

os.system('cp /home/username/xmlFile.xml /home/username/NewFolder/%s.xml' % myString)

整个脚本:

#!/usr/bin/python
import os
import re
from shutil import copyfile

arr = os.listdir('/di/rec/to/ry')
newArr = []
for j in arr:
m = re.search('.*txt', j)
if m != None:
newArr.append(m.group(0))
for i in newArr:
myString = ""
f = open('/home/username/xmlFile.xml', 'r+')
i = i[:-4]
data = f.readlines()
myString += str(i)
data[10] = data[10][:36] + i + data[10][64:]
f.truncate(0)
f.seek(0)
f.writelines(data)
#os.system('cp /home/username/xmlFile.xml /home/username/NewFolder/%s.xml' % myString)
copyfile('/home/username/xmlFile.xml', '/home/username/NewFolder/%s.xml' % myString)

最佳答案

您可能遇到了同步问题。文件不会立即写入磁盘,而是缓冲在内存中以提高总体吞吐量。这意味着 copyfile 调用看不到您对文件所做的最新更改。尝试在 copyfile 之前调用 f.flush() 以确保更改已提交到磁盘。

关于Python os.system cp 命令复制空文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51551902/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com