2025-03-05
编程
00
请注意,本文编写于 54 天前,最后修改于 54 天前,其中某些信息可能已经过时。

目录

1. 复制文件
2. 复制整个目录
3. 移动或重命名文件/目录
4. 删除目录树
5. 创建归档文件
6. 解压归档文件
7.查询磁盘使用情况
示例解释

Python的shutil包是一个用于高级文件操作的库,它提供了许多高效的函数来处理文件和目录。通过shutil,你可以轻松地复制、移动、重命名和删除文件或目录,以及查询磁盘使用情况等。

shutil是Python标准库的一部分,这意味着你不需要单独安装它。只要你已经安装了Python,就可以直接在你的脚本中导入并使用shutil模块,而无需进行额外的安装步骤。

1. 复制文件

python
import shutil # 将文件从源路径复制到目标路径 src = "/path/to/source/file.txt" dst = "/path/to/destination/file.txt" shutil.copy(src, dst)

2. 复制整个目录

python
import shutil # 将整个目录从源路径复制到目标路径 src_dir = "/path/to/source_directory" dst_dir = "/path/to/destination_directory" shutil.copytree(src_dir, dst_dir)

3. 移动或重命名文件/目录

python
import shutil # 移动或重命名文件或目录 src = "/path/to/source/file_or_directory" dst = "/path/to/new/location/or_new_name" shutil.move(src, dst)

4. 删除目录树

请谨慎使用此功能,因为它会删除指定目录及其所有内容。

python
import shutil # 删除整个目录树 dir_path = "/path/to/directory" shutil.rmtree(dir_path)

5. 创建归档文件

python
import shutil # 创建一个zip格式的归档文件 base_name = "/path/to/output_archive" # 输出的归档文件名(不包含扩展名) root_dir = "/path/to/directory_to_archive" # 要打包的目录 shutil.make_archive(base_name, 'zip', root_dir)

6. 解压归档文件

python
import shutil # 解压归档文件到指定目录 archive_file = "/path/to/archive.zip" extract_dir = "/path/to/destination_directory" shutil.unpack_archive(archive_file, extract_dir)

7.查询磁盘使用情况

shutil库提供了一个方便的方法来查询磁盘使用情况,即shutil.disk_usage()函数。这个函数可以用来获取指定路径所在文件系统的磁盘使用情况,包括总空间、已用空间和可用空间。

以下是使用shutil.disk_usage()查询磁盘使用情况的具体方法:

python
import shutil # 指定你想要查询的路径,可以是任意存在的目录或驱动器 path = "/" # 在Windows上,可以是类似 'C:\\' 的路径 # 获取磁盘使用情况 total, used, free = shutil.disk_usage(path) print(f"磁盘总量: {total >> 30} GB") print(f"已使用: {used >> 30} GB") print(f"可用: {free >> 30} GB")

在这个例子中:

  • total表示总的磁盘空间大小。
  • used表示已经使用的磁盘空间大小。
  • free表示剩余可用的磁盘空间大小。

注意,为了使输出更加直观,上述代码使用了位移操作符>>将字节数转换为GB(通过右移30位,因为(2^{30})字节等于1GB)。

示例解释

假设你在Linux系统上运行上面的脚本,并且根目录/有50GB的空间,其中已经使用了20GB,还有30GB可用。那么输出可能如下所示:

磁盘总量: 50 GB 已使用: 20 GB 可用: 30 GB