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

小姐

目录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呼叫看不到您对文件所做的最新更改。尝试调用f.flush()之前copyfile,确保提交了更改到磁盘。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

Python:os.system x实际命令

Python os.system:命令顺序

如何告诉Python等待os.system()的Windows命令完成?

Python - 多个 os.system 命令的替代方案

在python中使用os.system()执行linux命令

python 3.4-os.system不执行命令

用os.system复制文件

写入文件 Python 2.6.4 os.system 后调用 grep

Python执行期望命令不匹配的引号问题:python -c'os.system(“ expect -c ...”)'

python os.system命令行将值返回给python

如何在编辑器中通过命令 ( os.system (Path) ) 或 (os.startfile(path/Filename)) 打开单个 python 文件(或任何代码文件)?

Python:os.system的输入被拆分

如何使用 python 2 在 os.system 命令中转义/使用单引号?

寻找帮助了解os.system()Python行中的sed命令

从python的“ os.system”调用中调用时,会启动两个“ prstat”命令

Python-什么时候可以使用os.system()发出常见的Linux命令

如何在Python中使用'os.system('command')'向CMD发送命令列表

终止Python进程并停止其底层os.system命令行

使用python在os.system的参数中使用一行“找不到命令”

Python os.system 不返回与命令提示符相同的数据

如何在python中列出os.system()中列出的命令?

将输出重定向到文件时的奇怪 python 行为(使用 os.system 时)

Python os.system 附加到首字母的文件剪切

如何在 python 可执行文件中使用 os.system()?

如何使用C文件返回值,然后使用os.system在python中提取值?

使用 os.system 在 Python3 中将文件的内容设置为变量

多行命令到os.system

Python,os.system和subprocess.call都不适用于可变字符串命令

需要在os.system中的变量与python中的espeak和aplay命令一起使用