问题标签 [shutil]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
python - shutil.copy2 - 不同文件系统和伪文件的行为
我写了一个小脚本来同步两个目录。该脚本允许同步某些文件类型并允许通过校验和或日期进行文件比较。在比较之后,应该复制的文件列表被提供给使用shutil.copy2()模块的文件复制过程。在各种测试运行中,我发现了 shutil.copy2 的奇怪行为,我没有解决方法:
第一:如果源是 ext3 卷,目标是 fat32(记忆棒),shutil 会引发错误。我认为这是因为 shutil.copy2 也尝试复制元数据,而 fat32 不支持这一点。但我不知道如何通过 try: except: 语句来捕获此错误。
第二:第二个问题更难。源和目标都是 ext3 卷。在源代码上有完整 Linux 目录树的一些备份。当我的实用程序尝试同步这些目录树时,脚本会无限循环运行,直到我的系统分区空间不足。我尝试修复此行为并在开始复制过程之前使用 stat 模块检查源文件是否为常规文件,但这无济于事。具有奇怪行为的文件是/proc/661/fd/3。也许还有更多,但我无法测试,因为我的系统在尝试复制此文件时由于内存消耗而冻结。
这两个问题我找了几天的解决办法,希望身边的高手多多支持。
谢谢你的帮助。
这是我的文件复制过程的代码:
按照第 1 号答案的提示后,shutil,copy2 语句更改为:
python - 调用函数时出现“不可下标”错误
我有下面的函数,它复制目录中的文件并在调用函数的目录中重新创建它。当我在 ipython 中逐部分运行代码时,它工作正常。但是,当我将它作为函数执行时,它给了我以下错误:
这是功能
关于错误的任何想法?谢谢
编辑:这是查找的代码
EDIT2:从 ipython 输出 filein
基本上,只有一个文件。我在 shutil.copy2 中使用了 filein[0] 来删除方括号
python - Python - 创建目录并移动特定文件
更好地学习和理解 Python 我想编写一个基于 youtube-dl 的脚本,该脚本下载播放列表并将所有这些 flv 视频移动到特定目录中。
到目前为止,这是我的代码:
我的 Playlists.txt 的结构如下所示:
我遇到两个问题。首先,字符串格式不起作用。
我得到错误:
任何人都可以解释我的原因吗?当我打印 p[0] 时,一切看起来都很好。
其次,我不知道如何设置正确的 shutil.move 命令以仅移动刚刚下载的 flv 视频。我该如何过滤?
谢谢!
python - 当我在这个函数中使用shutil时,'r/'来自哪里?
给我这个错误:
即使当
'r/' 来自哪里?
python - shutil 不存储随机选择/复制文件的路径?
[编辑:见下面的最终代码] 我正在使用下面的代码从源目录中随机选择 5 个文件,然后将它们复制到新目录。它给了我一个 IO 错误,其中显示“没有这样的文件或目录 'x' 存在”,其中“x”是没有目录路径的文件名。不知何故,它没有将路径存储在“文件”中。我查看了这个论坛以及一个shutil教程,但我无法弄清楚。(顺便说一句,这类似于我之前提出的问题,但代码和错误发生了变化。当我得到它的工作时,我会将最终代码发布到该问题)。提前致谢!
python - 如何使用 Python 的 shutil 将文件复制到包含与号“&”的路径?
我是 Python 的新手,必须修改现有的 Python 脚本。该脚本将文件复制到其他路径,如下所示:
err=shutil.copyfile(src, dst)
除非dst
包含以下字符,否则此方法有效&
:
dst = "Y:\R&D\myfile.txt"
在这种情况下,我收到 Windows 错误弹出窗口,上面写着
我尝试使用反斜杠、双反斜杠和用额外的引号包裹字符串来转义和使用:dst = "\"Y:\R&D\myfile.txt\""
. 在最后一种情况下没有任何作用,我从shutil
.
我怎么解决这个问题?
python - shutil.copytree 的问题
我想从我的计算机上的本地服务器复制文件夹,使用函数 shutil.copytree,我使用 macOS,但今天我遇到问题,python 总是向我显示相同的消息,“[错误 1] 操作不允许”,但昨天我的相同文件夹的脚本工作没有问题......有人可以告诉我问题是什么,可能发生了什么?
python - Python - shutil 似乎没有制作文件的真正二进制副本
昨天根据海报的出色建议,我开始使用该shutil.copyfileobj
方法制作文件副本。
我的程序应该制作文件的精确副本,删除最后一个字节并保存新副本。
昨晚我用一些非常小的 ASCII 文本文件对其进行了测试,因此我可以检查它是否也按照我的要求进行了测试,今天早上我在一些实际的“复杂”文件、PDF 和 JPG 上进行了尝试,它看起来像副本功能不是制作真正的副本。我在十六进制编辑器中查看了生成的文件,我可以看到在 ~ 偏移量 0x300 之后发生了一些奇怪的事情 - 要么正在添加数据,要么正在复制数据时正在更改数据。我不知道是哪个。
我的程序迭代地取出一个字节并保存一个新版本,我可以看到新创建的文件与原始文件始终不同,(最后一个字节除外)
我还可以看到新创建的对象比源文件小得多。
python - shutil.rmtree() 说明
我已阅读此功能的文档,但是,我认为我没有正确理解它。如果有人可以告诉我我缺少什么,或者我是正确的,那将是一个很大的帮助。以下是我的理解:
使用该shutil.rmtree(path)
函数,它只会删除指定的目录,而不是整个路径。IE:
shutil.rmtree('user/tester/noob')
使用这个,它只会删除'noob'目录对吗?不是完整的路径?
python - Shutil move 函数给出了无效的争论错误 PYTHON
我正在编写一些代码,它将通过一个文件,将其作为临时文件进行编辑,然后将临时文件复制到新文件上以便进行编辑。但是,当使用shutil 的move 方法时,我不断收到此错误:
IOError:[Errno 22] 无效参数
我试过使用 copy、copy2 和 copyfile。这是代码的副本: