处理文本:查看、搜索与管道传递
掌握每位 Linux 管理员都依赖的日常文本工具:查看文件、使用 grep 搜索,以及通过管道和重定向串联命令,直接从命令行处理服务器数据。
处理文本:查看、搜索与管道传递 是 CoddyKit 上的免费 Linux Server Deployment & SSH Mastery 课时。 这是第 4 节课,共 4 节。 你可以在下方免费阅读本课时的完整内容 — 然后在浏览器中使用内置代码编辑器和全天候 AI 导师进行实践。 这是 Linux Server Deployment & SSH Mastery 学习路径的一部分,你的进度在网页和 CoddyKit 应用中同步。 Linux Server Deployment & SSH Mastery 课程共包含 4 节课。
文本就是 Linux 的接口
在 Linux 服务器上,几乎所有内容都是文本:配置、日志和输出。熟练地使用管道和重定向来读取和筛选文本,是成为管理员的关键。
使用 cat 和 less 查看文件
cat 会将整个文件输出到屏幕上,适合较短的文件。对于较长的文件,请使用 less,它可以让您滚动查看、使用 / 搜索,并使用 q 退出。
cat /etc/hostname
less /var/log/syslog使用 head 和 tail 查看开头与结尾
只需要查看开头或结尾?head 显示前几行,tail 显示最后几行。此外,tail -f 会实时跟踪文件,非常适合观察日志不断增长。
head -n 5 /etc/passwd
tail -n 20 /var/log/auth.log
tail -f /var/log/nginx/access.log使用 grep 搜索
grep 会查找与某个模式匹配的行,是日志分析的主力工具。您可以使用 -i(忽略大小写)、-n(显示行号)和 -r(递归处理目录)。
grep -i 'failed' /var/log/auth.log
grep -rn 'TODO' /etc/nginx/管道的力量
管道(|)会将一个命令的输出传给下一个命令,让您能够串联简单工具。在这里,grep 会为您筛选 cat 的输出。
cat /var/log/syslog | grep -i 'usb'使用 wc 计数
wc 可以统计行数、单词数和字符数。将内容通过管道传给 wc -l,您就能回答“发生了多少次登录失败”之类的问题。
grep -i 'failed password' /var/log/auth.log | wc -l排序与去重
sort 会对行进行排序,uniq 会合并相邻的重复项,因此您几乎总是应该先排序。uniq -c 会统计数量,非常适合对条目进行排名。
cut -d' ' -f1 access.log | sort | uniq -c | sort -rn | head将输出重定向到文件
重定向可以将输出保存到文件:> 会覆盖文件,>> 会追加内容,2> 会捕获错误。这就是脚本生成报告和日志的方式。
grep -i error /var/log/syslog > errors_today.txt
date >> errors_today.txt使用 sed 编辑流
sed 可以使用 s/old/new/ 即时编辑文本流。它会输出修改后的版本,而不会改动原文件,除非您添加 -i。
sed 's/localhost/myserver/g' /etc/hosts综合运用
真正重要的技能是组合这些工具。一行命令就可以从 Web 日志中提取造成问题最多的 IP:读取、提取、排序、计数、排名,然后显示前五项。
cat access.log | awk '{print $1}' | sort | uniq -c | sort -rn | head -n 5最佳实践
保持文本处理简洁:处理大文件时优先使用 less,一次构建一个阶段的管道,使用 >> 避免覆盖数据,并为 grep 模式加引号。
快速检查
测试您对文本处理的掌握情况。
回顾
您已经拥有一套完整的文本工具集:使用 cat/less/head/tail查看,使用 grep 搜索,使用 wc/sort/uniq/sed 转换,并通过管道和重定向将它们组合起来。
常见问题解答
「处理文本:查看、搜索与管道传递」课时是免费的吗?
是的 — 「处理文本:查看、搜索与管道传递」的完整文本可在网页上免费阅读。要进行交互式练习(内置代码编辑器和全天候 AI 导师)并解锁 Linux Server Deployment & SSH Mastery 课程的其余内容,请升级到 CoddyKit PRO。 Linux Server Deployment & SSH Mastery 课程共包含 4 节课。
「处理文本:查看、搜索与管道传递」这节课中我会学到什么?
掌握每位 Linux 管理员都依赖的日常文本工具:查看文件、使用 grep 搜索,以及通过管道和重定向串联命令,直接从命令行处理服务器数据。 你通过在浏览器中直接运行的动手代码来练习 Linux Server Deployment & SSH Mastery,全天候 AI 导师会在你学习这节课的过程中回答你的问题。
学习 Linux Server Deployment & SSH Mastery 需要有经验吗?
无需任何先前经验。CoddyKit 上的 Linux Server Deployment & SSH Mastery 课程适合初学者到高级学习者,你可以从这里开始或从头开始,按照自己的节奏学习。 这是第 4 节课,共 4 节。
「处理文本:查看、搜索与管道传递」课时需要多长时间?
大多数 CoddyKit 课程大约需要 5–10 分钟。每节课都很精短且互动,所以你能稳步进步,并在网页和应用中从离开的地方继续。
我能在这节 Linux Server Deployment & SSH Mastery 课中编写并运行代码吗?
能。每节 Linux Server Deployment & SSH Mastery 课都包含内置代码编辑器,你可以在浏览器中直接编写并运行真实代码,并获得即时 AI 反馈 — 无需本地设置。
此课程中的所有课时
- Linux 服务器简介
- 掌握基本 CLI 命令
- 文件系统与权限基础
- 处理文本:查看、搜索与管道传递