I/O 项目:构建命令行程序
本章回顾了您到目前为止学到的许多技能,以及 探索更多标准库功能。我们将构建一个命令行 与文件和命令行输入/输出交互的工具,以练习一些 你现在已经掌握了 Rust 概念。
Rust 的速度、安全性、单二进制输出和跨平台支持使其
一种创建命令行工具的理想语言,因此对于我们的项目,我们将
制作我们自己的经典命令行搜索工具版本(Globally search a regular expression 和 print)。在
最简单的用例,在指定文件中搜索指定的字符串。自
这样做时,将文件路径和字符串作为其参数。然后它显示
该文件,在该文件中查找包含 String 参数的行,并打印
那些台词。grep
grep
grep
在此过程中,我们将展示如何使命令行工具使用终端
许多其他命令行工具使用的功能。我们将读取
environment 变量来允许用户配置我们工具的行为。
我们还会将错误消息打印到标准错误控制台流 ()
而不是标准输出 (),例如,用户可以
将成功的输出重定向到文件,同时仍在屏幕上看到错误消息。stderr
stdout
Rust 社区成员 Andrew Gallant 已经创建了一个完整的
精选的、非常快速的 版本,称为 。相比之下,我们的
版本将相当简单,但本章将为您提供一些
背景知识 您需要了解实际项目,例如 .grep
ripgrep
ripgrep
我们的项目将结合您到目前为止学到的一些概念:grep
本文档由官方文档翻译而来,如有差异请以官方英文文档(https://doc.rust-lang.org/)为准