python 中的文件是否与另一个文件位于同一文件系统上?

发布于 2024-07-23 07:44:00 字数 228 浏览 1 评论 0原文

有没有一种简单的方法可以确定一个文件是否与另一个文件位于同一文件系统上?

以下命令:

import shutil
shutil.move('filepatha', 'filepathb')

将尝试重命名该文件(如果它位于同一文件系统上),否则它将复制它,然后取消链接。

我想在调用此命令之前了解它是否会执行快速或慢速选项,我该怎么做?

Is there a simple way of finding out if a file is on the same filesystem as another file?

The following command:

import shutil
shutil.move('filepatha', 'filepathb')

will try and rename the file (if it's on the same filesystem), otherwise it will copy it, then unlink.

I want to find out before calling this command whether it will preform the quick or slow option, how do I do this?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

千秋岁 2024-07-30 07:44:00

使用 os.stat(在文件名上)或 os.fstat(在文件描述符上)。 结果的 st_dev 将是设备号。 如果它们位于同一文件系统上,则两者中的文件系统将相同。

import os

def same_fs(file1, file2):
    dev1 = os.stat(file1).st_dev
    dev2 = os.stat(file2).st_dev
    return dev1 == dev2

Use os.stat (on a filename) or os.fstat (on a file descriptor). The st_dev of the result will be the device number. If they are on the same file system, it will be the same in both.

import os

def same_fs(file1, file2):
    dev1 = os.stat(file1).st_dev
    dev2 = os.stat(file2).st_dev
    return dev1 == dev2
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文