构建命令行程序:Rust 实现迷你 grep 工具
1. 项目概述
在 Rust 编程中,我们可以利用其速度、安全性、单二进制输出和跨平台支持等特性来构建强大的命令行工具。本次我们将创建一个简化版的传统命令行搜索工具 grep,名为 minigrep。grep 的基本功能是在指定文件中搜索指定字符串,并打印包含该字符串的行。
为了让用户能够调整工具的功能,我们会读取环境变量的值。同时,将错误消息打印到标准错误控制台流(stderr),而非标准输出(stdout),这样用户可以将成功的输出重定向到文件,同时仍能在屏幕上查看错误消息。
2. 接受命令行参数
首先,我们使用 cargo new 命令创建一个新的项目,为了与可能已有的 grep 实用工具区分开来,我们将项目命名为 minigrep 。
$ cargo new minigrep
Created binary (application) `minigrep` project
$ cd minigrep
要让 minigrep 接受文件名和要搜索的字符串作为命令行参数,我们需要使用 Rust 标准库中的 std::env::args 函数。该函数会生成一个迭代器,包含传递给 minigrep 的命令行参数。我们可以使用 collect 函数将迭代器中的值收集到一个向量中。
以下是实现代码: <
超级会员免费看
订阅专栏 解锁全文
740

被折叠的 条评论
为什么被折叠?



