文本处理
echo
输出文本或变量
echo [选项] [字符串]
常用示例
echo "Hello World" # 输出字符串
echo $PATH # 输出环境变量
echo "text" > file.txt # 写入文件
grep 最常用
在文件中搜索文本,支持正则表达式
grep [选项] 模式 [文件...]
常用示例
grep "pattern" file.txt # 在文件中搜索
grep -i "pattern" file.txt # 忽略大小写
grep -r "pattern" /path/ # 递归搜索
grep -n "pattern" file.txt # 显示行号
grep -v "pattern" file.txt # 反向匹配
sed
流编辑器,用于文本替换和转换
sed [选项] '命令' 文件...
常用示例
sed 's/old/new/' file.txt # 替换每行第一个匹配
sed 's/old/new/g' file.txt # 替换所有匹配
sed -i 's/old/new/g' file.txt # 直接修改文件
sed '3d' file.txt # 删除第3行
awk
强大的文本分析处理工具
awk '模式 {动作}' 文件...
常用示例
awk '{print $1}' file.txt # 打印第一列
awk -F: '{print $1}' /etc/passwd # 指定分隔符
awk '{sum+=$1} END {print sum}' file.txt # 求和
awk 'NR>1' file.txt # 跳过第一行
sort
对文本行进行排序
sort [选项] 文件...
常用示例
sort file.txt # 按字母排序
sort -r file.txt # 倒序排序
sort -n file.txt # 按数字排序
sort -k 2 file.txt # 按第2列排序
uniq
去除或报告重复行(需先排序)
uniq [选项] 文件...
常用示例
sort file.txt | uniq # 去重
sort file.txt | uniq -c # 统计重复次数
sort file.txt | uniq -d # 只显示重复行
cut
从每行中提取部分内容
cut [选项] 文件...
常用示例
cut -d: -f1 /etc/passwd # 提取第1列
cut -c 1-5 file.txt # 提取第1-5个字符
cut -d: -f1,3 /etc/passwd # 提取多列
tr
字符转换或删除
tr [选项] 字符集1 [字符集2]
常用示例
echo "hello" | tr 'a-z' 'A-Z' # 转大写
cat file.txt | tr -d '\r' # 删除回车符
echo "hello" | tr -s 'l' # 压缩重复字符