Help us improve your experience.

Let us know what you think.

Do you have time for a two-minute survey?

 
 

使用 Junos PyEZ 执行文件系统操作

使用 Junos PyEZ 管理文件和目录、计算校验和以及查看和清理 Junos 设备上的系统存储。

Junos PyEZ 应用程序可以使用该 jnpr.junos.utils.fs 实用程序在 Junos 设备上执行文件系统操作,包括:

  • 管理文件

  • 管理目录

  • 管理磁盘空间

本主题讨论如何使用该实用程序执行一些常见的文件系统操作。

执行文件操作

您可以使用 jnpr.junos.utils.fs 实用程序执行常见的文件和目录操作。例如,您可以:

  • 查看文件和目录信息

  • 创建和删除目录

  • 查看、删除、移动或复制文件

  • 计算文件的校验和

本节讨论一些常见的操作。有关受支持操作的完整列表,请参阅 jnpr.junos.utils.fs 文档。

查看文件列表

您可以使用该 ls() 方法查看给定路径上的文件和目录列表。例如:

管理文件

jnpr.junos.utils.fs 实用程序使您能够在目标设备上执行常见的文件操作。 表 1 概述了这些方法。方法名称与类 Unix 操作系统上的相应命令相同。

表 1:Junos PyEZ 文件操作方法

方法

描述

cat()

查看文件。

cp()

复制文件。

mv()

重命名文件。

rm()

删除文件。

以下 Junos PyEZ 应用程序连接到 Junos 设备,并使用该 cat() 方法查看文件内容。如果文件不存在,则应用程序将 None打印 。

以下应用程序连接到 Junos 设备,并将文件从 /var/tmp 目录复制到 /var/db/scripts/op 目录。如果操作成功或False出现错误,应用程序将True打印。

从 Junos PyEZ 2.6.8 版开始,您可以为文件复制操作指定路由实例。包括 routing_instance 参数,并指定实例的名称。例如:

计算校验和

您可以使用该 checksum() 方法计算文件的校验和。默认情况下, checksum() 计算 MD5 校验和。要显式指定算法,请包含 calc 参数并指定以下值之一:

  • MD5

  • SHA256

  • SHA1

以下 Junos PyEZ 应用程序连接到 Junos 设备,使用该 cat() 方法验证文件是否存在,如果文件存在,则计算 SHA256 校验和:

管理文件系统存储

您可以使用 jnpr.junos.utils.fs 实用程序管理文件系统存储,如以下部分所述。

查看文件系统磁盘空间使用情况

您可以使用该 storage_usage() 方法返回有关文件系统已用空间和可用空间的信息。该方法返回命令的 show system storage 输出。该信息类似于 Unix df 命令输出。

以下 Junos PyEZ 应用程序检索并打印所连接设备的磁盘空间使用情况:

查看目录使用情况

您可以使用该 directory_usage() 方法查看给定目录的磁盘空间使用情况,也可以选择查看其子目录。此方法在 show system directory-usage path 设备上执行命令并返回信息。如果未指定深度,Junos PyEZ 将使用默认深度零。该信息类似于 Unix du 命令返回的统计信息。

以下 Junos PyEZ 应用程序将打印目录 /var/tmp 的磁盘空间使用情况。

要包括子目录,请指定适当的深度。

清理系统存储

您可以使用该 storage_cleanup() 方法释放 Junos 设备上的磁盘空间。该方法执行命令 request system storage cleanup ,该命令轮换日志文件并删除临时文件。

若要仅查看将在清理操作中删除的文件列表,请改用该 storage_cleanup_check() 方法。此方法在 request system storage cleanup dry-run 设备上执行命令并返回候选文件列表而不删除它们。

以下 Junos PyEZ 应用程序首先执行该 storage_cleanup_check 操作并打印建议删除的文件列表。然后,应用程序会查询用户是否要继续清理存储并删除文件。如果用户确认清理操作,应用程序将执行 storage_cleanup() 删除文件的操作,然后打印已删除文件的列表。