首次实现 grrs
在上一章命令行参数之后,我们有了输入数据,可以编写实际的工具了。我们的 “main” 函数现在只包括以下这行:
let args = Cli::from_args();
先从打开我们拿到的文件开始。
let content = std::fs::read_to_string(&args.path)
.expect("could not read file");
现在,让我们遍历行并打印包含模式的每一行:
for line in content.lines() {
if line.contains(&args.pattern) {
println!("{}", line);
}
}
尝试一下: cargo run -- main src/main.rs
现在应该能正常工作了。