Trait std::os::linux::fs::MetadataExt1.1.0[][src]

pub trait MetadataExt {
Show methods fn as_raw_stat(&self) -> &stat;
fn st_dev(&self) -> u64;
fn st_ino(&self) -> u64;
fn st_mode(&self) -> u32;
fn st_nlink(&self) -> u64;
fn st_uid(&self) -> u32;
fn st_gid(&self) -> u32;
fn st_rdev(&self) -> u64;
fn st_size(&self) -> u64;
fn st_atime(&self) -> i64;
fn st_atime_nsec(&self) -> i64;
fn st_mtime(&self) -> i64;
fn st_mtime_nsec(&self) -> i64;
fn st_ctime(&self) -> i64;
fn st_ctime_nsec(&self) -> i64;
fn st_blksize(&self) -> u64;
fn st_blocks(&self) -> u64;
}
This is supported on Linux only.
Expand description

fs::Metadata 的特定于 OS 的扩展。

Required methods

👎 Deprecated since 1.8.0:

other methods of this trait are now preferred

获得对基础 stat 结构体的引用,该基础体包含 OS 返回的原始信息。

返回的 stat 的内容在 Unix 平台上是不一致的。 os::unix::fs::MetadataExt trait 包含原始统计信息中包含的跨 Unix 抽象。

Examples

use std::fs;
use std::io;
use std::os::linux::fs::MetadataExt;

fn main() -> io::Result<()> {
    let meta = fs::metadata("some_file")?;
    let stat = meta.as_raw_stat();
    Ok(())
}
Run

返回此文件所在的设备 ID。

Examples

use std::fs;
use std::io;
use std::os::linux::fs::MetadataExt;

fn main() -> io::Result<()> {
    let meta = fs::metadata("some_file")?;
    println!("{}", meta.st_dev());
    Ok(())
}
Run

返回索引节点号。

Examples

use std::fs;
use std::io;
use std::os::linux::fs::MetadataExt;

fn main() -> io::Result<()> {
    let meta = fs::metadata("some_file")?;
    println!("{}", meta.st_ino());
    Ok(())
}
Run

返回文件类型和模式。

Examples

use std::fs;
use std::io;
use std::os::linux::fs::MetadataExt;

fn main() -> io::Result<()> {
    let meta = fs::metadata("some_file")?;
    println!("{}", meta.st_mode());
    Ok(())
}
Run

返回文件的硬链接数。

Examples

use std::fs;
use std::io;
use std::os::linux::fs::MetadataExt;

fn main() -> io::Result<()> {
    let meta = fs::metadata("some_file")?;
    println!("{}", meta.st_nlink());
    Ok(())
}
Run

返回文件所有者的用户标识。

Examples

use std::fs;
use std::io;
use std::os::linux::fs::MetadataExt;

fn main() -> io::Result<()> {
    let meta = fs::metadata("some_file")?;
    println!("{}", meta.st_uid());
    Ok(())
}
Run

返回文件所有者的组 ID。

Examples

use std::fs;
use std::io;
use std::os::linux::fs::MetadataExt;

fn main() -> io::Result<()> {
    let meta = fs::metadata("some_file")?;
    println!("{}", meta.st_gid());
    Ok(())
}
Run

返回此文件表示的设备 ID。仅与特殊文件有关。

Examples

use std::fs;
use std::io;
use std::os::linux::fs::MetadataExt;

fn main() -> io::Result<()> {
    let meta = fs::metadata("some_file")?;
    println!("{}", meta.st_rdev());
    Ok(())
}
Run

返回文件的大小 (如果是常规文件或符号链接),以字节为单位。

符号链接的大小是它包含的路径名的长度,没有终止的空字节。

Examples

use std::fs;
use std::io;
use std::os::linux::fs::MetadataExt;

fn main() -> io::Result<()> {
    let meta = fs::metadata("some_file")?;
    println!("{}", meta.st_size());
    Ok(())
}
Run

返回文件的最后访问时间,以自 Unix 纪元以来的秒数为单位。

Examples

use std::fs;
use std::io;
use std::os::linux::fs::MetadataExt;

fn main() -> io::Result<()> {
    let meta = fs::metadata("some_file")?;
    println!("{}", meta.st_atime());
    Ok(())
}
Run

返回文件的最后访问时间,自 st_atime 起以纳秒为单位。

Examples

use std::fs;
use std::io;
use std::os::linux::fs::MetadataExt;

fn main() -> io::Result<()> {
    let meta = fs::metadata("some_file")?;
    println!("{}", meta.st_atime_nsec());
    Ok(())
}
Run

返回文件的最后修改时间,以自 Unix 纪元以来的秒数为单位。

Examples

use std::fs;
use std::io;
use std::os::linux::fs::MetadataExt;

fn main() -> io::Result<()> {
    let meta = fs::metadata("some_file")?;
    println!("{}", meta.st_mtime());
    Ok(())
}
Run

返回文件的最后修改时间,自 st_mtime 起以纳秒为单位。

Examples

use std::fs;
use std::io;
use std::os::linux::fs::MetadataExt;

fn main() -> io::Result<()> {
    let meta = fs::metadata("some_file")?;
    println!("{}", meta.st_mtime_nsec());
    Ok(())
}
Run

返回文件的最后状态更改时间,以自 Unix 纪元以来的秒数为单位。

Examples

use std::fs;
use std::io;
use std::os::linux::fs::MetadataExt;

fn main() -> io::Result<()> {
    let meta = fs::metadata("some_file")?;
    println!("{}", meta.st_ctime());
    Ok(())
}
Run

返回文件的最后状态更改时间,自 st_ctime 起以纳秒为单位。

Examples

use std::fs;
use std::io;
use std::os::linux::fs::MetadataExt;

fn main() -> io::Result<()> {
    let meta = fs::metadata("some_file")?;
    println!("{}", meta.st_ctime_nsec());
    Ok(())
}
Run

返回有效文件系统 I/O 的 “preferred” 块大小。

Examples

use std::fs;
use std::io;
use std::os::linux::fs::MetadataExt;

fn main() -> io::Result<()> {
    let meta = fs::metadata("some_file")?;
    println!("{}", meta.st_blksize());
    Ok(())
}
Run

返回分配给文件的块数,以 512 字节为单位。

Examples

use std::fs;
use std::io;
use std::os::linux::fs::MetadataExt;

fn main() -> io::Result<()> {
    let meta = fs::metadata("some_file")?;
    println!("{}", meta.st_blocks());
    Ok(())
}
Run

Implementors

👎 Deprecated since 1.8.0:

other methods of this trait are now preferred