Toshell 子类方法 - KPTest框架开放资料

Skip to content

# Toshell 子类方法

1. cli_list_file
> 描述：

    1
    2
    3
    4
    5

    方法功能：获取文件夹下的文件列表

    命令格式：

    支持Host类型：HostType.BMC, HostType.HMM

> 参数：

    1
    2
    3
    4
    5
    6
    7
    8

    path:(str) 文件夹路径
    time_sort:(bool) (optional)文件是否按时间升序排序
    reverse:(bool) (optional)逆序排序
    grep:(str) 查找字段
    awk:(bool) 计算文件大小
    Keyword Args:
    one_file_per_line (bool): -1参数,是否一个文件显示一行,默认为False
    long_list (bool): -l参数,默认为True

> 返回值：

    1

    result: (str) 读取到的文件列表

> 异常：

    1

    None

> 举例：

    1

    self.cli_api.cli_list_file()

2. cli_read_file
> 描述：

    1
    2
    3
    4
    5

    方法功能：使用cat命令读取文件

    命令格式：

    支持Host类型：HostType.BMC, HostType.HMM

> 参数：

    1

    file_path: (str) 要查看的文件路径

> 返回值：

    1

    response(str): 读取到的文件内容，以字符串形式返回

> 异常：

    1

    None

> 举例：

    1

    self.cli_api.cli_read_file(file_path)

3. cli_change_directory
> 描述：

    1
    2
    3
    4
    5

    方法功能：telnet连接bmc模式下,切换目录

    命令格式：

    支持Host类型：HostType.BMC, HostType.HMM

> 参数：

    1

    dir_path: (str) 目录名称

> 返回值：

    1

    response(str): 命令的返回值

> 异常：

    1

    None

> 举例：

    1

    self.cli_api.cli_change_directory(dir_path)

4. cli_unzip_file
> 描述：

    1
    2
    3
    4
    5

    方法功能：zip格式文件解压缩

    命令格式：

    支持Host类型：HostType.BMC, HostType.HMM

> 参数：

    1
    2
    3
    4

    file_path (str): 需要查找指定的路径或者文件
    exdir (str): 解压的目标地址
    force (bool): 不必先询问用户,unzip执行后覆盖原有文件
    strip (bool): 是否去掉压缩文件中目录

> 返回值：

    1

    response(str): 命令的返回值

> 异常：

    1

    None

> 举例：

    1

    self.cli_api.cli_unzip_file(file_path)

5. cli_copy_file
> 描述：

    1
    2
    3
    4
    5

    方法功能：强制拷贝文件/目标到目标地址

    命令格式：

    支持Host类型：HostType.BMC, HostType.HMM

> 参数：

    1
    2
    3

    file_path (str): 源路径
    destination (str): 目的路径
    sudo (bool): 超级管理员权限

> 返回值：

    1

    response(str): 命令的返回值

> 异常：

    1

    None

> 举例：

    1

    self.cli_api.cli_copy_file(params)

6. cli_execute_program
> 描述：

    1
    2
    3
    4
    5

    方法功能：执行可执行程序

    命令格式：

    支持Host类型：HostType.BMC, HostType.HMM

> 参数：

    1
    2
    3
    4

    program_name: (str) 可执行程序名称
    dir_path: (str) 可执行程序所在的文件夹路径
    parameter: (str) 可执行程序执行时需要的参数
    timeout: (str) 可执行程序执行超时时间

> 返回值：

    1

    response(str): 命令的返回值

> 异常：

    1

    None

> 举例：

    1

    self.cli_api.cli_execute_program(params)

7. cli_chmod
> 描述：

    1
    2
    3
    4
    5

    方法功能：改变文件或目录的文件权限

    命令格式：

    支持Host类型：HostType.BMC, HostType.HMM

> 参数：

    1
    2
    3

    file_path (str): 目的路径
    mode (int) : 文件权限
    sudo (bool): 超级管理员权限

> 返回值：

    1

    response(str): 命令的返回值

> 异常：

    1

    None

> 举例：

    1

    self.cli_api.cli_chmod(params)

8. cli_exec_service
> 描述：

    1
    2
    3
    4
    5

    方法功能：systemctl命令操作ibmc服务

    命令格式：

    支持Host类型：HostType.BMC, HostType.HMM

> 参数：

    1
    2

    service  (str):  服务
    method  (str):  操作方式,如start,restart,等

> 返回值：

    1

    response(str): 命令的返回值

> 异常：

    1

    None

> 举例：

    1

    self.cli_api.cli_exec_service(params)

9. cli_get_netstat
> 描述：

    1
    2
    3
    4
    5

    方法功能：netstat命令查看ibmc服务状态

    命令格式：

    支持Host类型：HostType.BMC, HostType.HMM

> 参数：

    1

    params:(dict): 可执行程序执行时需要的参数

> 返回值：

    1

    response(str): 命令的返回值

> 异常：

    1

    None

> 举例：

    1

    self.cli_api.cli_get_netstat(params)

10. cli_get_iptables
> 描述：

    1
    2
    3
    4
    5

    方法功能：iptables命令配置

    命令格式：

    支持Host类型：HostType.BMC, HostType.HMM

> 参数：

    1
    2
    3
    4
    5

    is_ipv6 (bool): 判断是否为ip6tables表,默认为iptables
    table_type (str): 要查询的tables类型,默认为nat表
    verbose (bool): 判断是否要查询tables的详细模式,-v,默认为开启
    numeric (bool): 判断是否需要将地址和端口的数字输出，-n,默认为开启
    rules_list (bool): 判断是否需要列出一个链或所有链中的规则，-L,默认为开启

> 返回值：

    1

    response(str): 命令的返回值

> 异常：

    1

    None

> 举例：

    1

    self.cli_api.cli_get_iptables(params)

11. cli_del_iptables
> 描述：

    1
    2
    3
    4
    5

    方法功能：iptables删除操作

    命令格式：

    支持Host类型：HostType.BMC, HostType.HMM

> 参数：

    1
    2
    3
    4

    is_ipv6 (bool): 判断是否为ip6tables表,默认为iptables
    delete_rule (bool): 判断是否进行删除操作，默认为开启
    chains (bool): 要查询的tables类型,默认为nat表
    numbers (int): 要删除的规则个数,默认为1

> 返回值：

    1

    response(str): 命令的返回值

> 异常：

    1

    None

> 举例：

    1

    self.cli_api.cli_del_iptables()

12. cli_get_route_ipv6
> 描述：

    1
    2
    3
    4
    5

    方法功能：查询ipv6的路由信息

    命令格式：

    支持Host类型：HostType.BMC, HostType.HMM

> 参数：

    1

    None

> 返回值：

    1

    response(str): ipv6路由信息和前缀

> 异常：

    1

    None

> 举例：

    1

    self.cli_api.cli_get_route_ipv6(params)

13. cli_mount
> 描述：

    1
    2
    3
    4
    5

    方法功能：查询镜像文件是否存在

    命令格式：

    支持Host类型：HostType.BMC, HostType.HMM

> 参数：

    1

    params:(dict): 输入参数

> 返回值：

    1

    response(str): 命令的返回值

> 异常：

    1

    None

> 举例：

    1

    self.cli_api.cli_mount(params)

14. cli_get_busybox
> 描述：

    1
    2
    3
    4
    5

    方法功能：查看进行文件绑定循环设备情况

    命令格式：

    支持Host类型：HostType.BMC, HostType.HMM

> 参数：

    1

    params:(dict): 输入参数

> 返回值：

    1

    response(str): 命令的返回值

> 异常：

    1

    None

> 举例：

    1

    self.cli_api.cli_get_busybox(params)

15. create_link_file
> 描述：

    1
    2
    3
    4
    5

    方法功能：创建硬链接或软链接

    命令格式：

    支持Host类型：HostType.BMC, HostType.HMM

> 参数：

    1
    2
    3

    link_type(str): 链接类型(hard_link、soft_link)
    source_file(str): 源文件
    source_file(str): 目的文件

> 返回值：

    1

    response(str): 命令的返回值

> 异常：

    1

    None

> 举例：

    1

    self.cli_api.create_link_file(source_file, target_file)

16. ifconfig
> 描述：

    1
    2
    3
    4
    5

    方法功能：查询网卡信息

    命令格式：

    支持Host类型：HostType.BMC, HostType.HMM

> 参数：

    1

    params:(dict): 输入参数

> 返回值：

    1
    2
    3
    4
    5
    6
    7
    8
    9

    response(dict): 网卡信息，键为网卡名称，值为网卡信息
    {'lo': ['Link encap:Local Loopback',
    'inet addr:xx.xx.xx.xx  Mask:xx.xx.xx.xx',
    'inet6 addr: ::1/128 Scope:Host',
    'UP LOOPBACK RUNNING  MTU:65536  Metric:1',
    'RX packets:3416467 errors:0 dropped:0 overruns:0 frame:0',
    'TX packets:3416467 errors:0 dropped:0 overruns:0 carrier:0',
    'collisions:0 txqueuelen:1000',
    'RX bytes:311296449 (296.8 MiB)  TX bytes:311296449 (296.8 MiB)']}

> 异常：

    1

    None

> 举例：

    1

    self.cli_api.ifconfig(params)

17. whoami
> 描述：

    1
    2
    3
    4
    5

    方法功能：whoami查询当前登录用户

    命令格式：

    支持Host类型：HostType.BMC, HostType.HMM

> 参数：

    1

    params:(dict): 输入参数

> 返回值：

    1

    response(str): 获取到的用户名

> 异常：

    1

    None

> 举例：

    1

    self.cli_api.whoami(params)