rev 命令详解
更新时间:2026-08-28。本文是「一个命令一个文档」系列,属于文本处理命令族(见文本处理命令族)。它反转的是"每一行里的字符",不是行序。
rev 把输入的每一行字符顺序反转:abc 变 cba。和 tac(见tac)不同,它不动行序、只翻每行内部。
一、基本用法
bash
echo "hello" | rev # 输出 olleh
rev file.txt # 逐行反转文件内容每行独立处理,行间顺序不变。纯字符级镜像翻转。
二、与 tac 的区别(常混)
bash
echo -e "abc\ndef" | tac # 行序反转:def \n abc
echo -e "abc\ndef" | rev # 行内反转:cba \n fedtac 翻"行的顺序"(尾行到首行),
rev翻"行内字符"(每行字符首尾对调)。一个动行、一个动字符,别搞反。
三、实战:回文/对称检测
bash
echo "level" | rev | grep -x "level" && echo "是回文"
# 或:
while read w; do [ "$w" = "$(echo $w|rev)" ] && echo "$w 回文"; done < words.txt判断回文:原词和反转后相等即回文。虽是小技巧,也常用于教学"字符级处理"。真实场景里
rev用得不多,但偶尔做字符镜像变换(如某些编码/格式反转) handy。
一句话总结
rev = 反转每行字符(不动行序):abc→cba;与 tac(见tac)区别是 rev 翻行内字符、tac 翻行顺序;可做回文检测等字符级处理。日常用得少,但字符镜像变换时方便。