grep命令 (缩写来自Globally search a Regular Expression and Print)是一种强大的文本搜索工具,它能使用特定模式匹配(包括正则表达式)搜索文本,并默认输出匹配行。Unix的grep家族包括grep、egrep和fgrep。
上一节我们实现了通过Command调用subprocess。这一节,我们将通过自己的代码去实现一个简单的grep。当然了,这种基础的工具你是能找到源码的,而我们的实现也并不像真正的grep那样注重效率,本节的主要作用就在于演示标准库API的使用。首先,我们需要对当前目录进行递归,遍历,每当查找到文件的时候,我们回调一个函数。于是,我们就有了这么个函数:use std::env::args;
我们知道,Linux系统中有一个命令叫grep,他能对目标文件进行分析并查找相应字符串,并该字符串所在行输出。今天,我们先来写一个Rust程序,来调用一下这个 grep 命令use std::process::*;use std::env::args;// 实现调用grep命令搜索文件fn main() { let mut arg_iter = args(); // panic if there is no one arg_iter.next().unwrap();
正则表达式是一种字符模式,用于在查找过程中匹配制定的字符。元字符通常在Linux中分为两类:Shell元字符,由Linux Shell进行解析;正则表达式元字符,由vi/grep/sed/awk等文本处理工具进行解析;
关注时代Java