it-swarm.cn

是否有针对grep,awk和sed的基本教程?

我已经有一段时间成为Linux用户了,并且我对大多数常见的命令行实用程序都有相当不错的了解。但是,与编程有关的又是grepawksed

关于我使用grep的唯一一件事就是将内容传送到其中以在日志文件中查找文件,以及ps的输出等。我没有使用过awksed。这些实用程序有什么好的教程吗?

98
Macha

AWK特别适合表格数据,并且学习曲线比某些替代方法低。

AWK:教程和简介

AWK入门替代链接

RegularExpressions.info

sed教程

grep教程

info sedinfo grepinfo awk 要么 info gawk

66

O'Reilly sed和awk 这本书非常适合er sed和awk。

19
user591

我写了关于sedsed的权威指南 的书,其中包括一个教程。它完全涵盖sed以及相关的命令,例如greptrheadtail。还完全覆盖了正则表达式,比我在其他地方见过的要好得多。

我同意其他人的观点,即扎实理解正则表达式非常重要。我也同意sed最好用于更简单的任务,更复杂的脚本会很快变得晦涩难懂。

我不同意awk已过时,相反。就像许多Unix事物(例如vi)一样,有一个学习曲线,但这是值得的。

我不同意使用awk代替grep的建议。根据我的经验,这没有任何意义。 grep非常简单。

11
Daniel Goldman

O'Rielly出版的《正则表达式食谱》足以使您以使用它们的任何语言到达任何地方。

3
ixtmixilix

该书的作者是Kernighan和Pike,书名类似于“ Unix编程环境”。

我实际上从那本书中学到的书叫做《伯克利Unix入门》。

3
HandyGandy

如果要从这3个(grep,sed和awk)中学习一个,则可以学习 awk/gawk。 。 awk可以执行grep和sed的功能,即使用正则表达式来搜索/替换文本,以及更多功能,因为它也是一种编程语言。如果您了解gawk/awk的内在知识,则无需使用grep/sed/wc/cut等。只需使用一种工具即可。

2
user1606

在我看来,awk或多或少已经过时了(但是,其他人会强烈反对这种观点),如今我认识的大多数人都使用诸如Perl之类的脚本语言,或者今天经常python用于高级文本操作) sed非常适合简单的文本操作任务,我一直使用它,主要是通过查看sed一线式学习它的,例如 http://sed.sourceforge.net/sed1line.txt =。关于grep:好吧,您基本上想对正则表达式有一个扎实的了解(sed也需要),这里我只使用了texinfo手册。

1
fschmitt