AI开发平台MODELARTS-MoXing常用操作的样例代码:查询操作

时间:2024-08-16 20:39:03

查询操作

  • 判断一个OBS文件是否存在,如果存在则返回True,如果不存在则返回False
    1
    2
    import moxing as mox
    mox.file.exists('obs://bucket_name/sub_dir_0/file.txt')
    
  • 判断一个OBS文件夹是否存在,如果存在则返回True,如果不存在则返回False
    1
    2
    import moxing as mox
    mox.file.exists('obs://bucket_name/sub_dir_0/sub_dir_1')
    

    由于OBS允许同名的文件和文件夹(Unix操作系统不允许),如果存在同名的文件和文件夹,例如“obs://bucket_name/sub_dir_0/abc”,当调用mox.file.exists时,不论abc是文件还是文件夹,都会返回True。

  • 判断一个OBS路径是否为文件夹,如果是则返回True,否则返回False
    1
    2
    import moxing as mox
    mox.file.is_directory('obs://bucket_name/sub_dir_0/sub_dir_1')
    

    由于OBS允许同名的文件和文件夹(Unix操作系统不允许),如果存在同名的文件和文件夹,例如obs://bucket_name/sub_dir_0/abc,当调用mox.file.is_directory时,会返回True。

  • 获取一个OBS文件的大小,单位为bytes。
    例如获取“obs://bucket_name/obs_file.txt”的文件大小。
    1
    2
    import moxing as mox
    mox.file.get_size('obs://bucket_name/obs_file.txt')
    
  • 递归获取一个OBS文件夹下所有文件的大小,单位为bytes。
    例如获取“obs://bucket_name/object_dir”目录下所有文件大小的总和。
    1
    2
    import moxing as mox
    mox.file.get_size('obs://bucket_name/object_dir', recursive=True)
    
  • 获取一个OBS文件或文件夹的stat信息,stat信息中包含如下信息。
    • length:文件大小。
    • mtime_nsec:创建时间戳。
    • is_directory:是否为目录。
    例如查询一个OBS文件“obs://bucket_name/obs_file.txt”,此文件地址也可以替换成一个文件夹地址。
    1
    2
    3
    4
    5
    import moxing as mox
    stat = mox.file.stat('obs://bucket_name/obs_file.txt')
    print(stat.length)
    print(stat.mtime_nsec)
    print(stat.is_directory)
    
support.huaweicloud.com/usermanual-standard-modelarts/modelarts_11_0005.html