linux去掉重复显示命令
时间: 2024-10-11 08:06:34 浏览: 25
linux100个常用命令大全
在Linux中,如果你希望去除连续运行同一命令时的重复输出,可以使用`uniq`或者`sort | uniq`这两个工具。这里简单解释一下:
1. `uniq`命令:它用于从标准输入(通常是管道)中删除相邻的重复行。例如:
```
command > output.txt && cat output.txt | uniq
```
这里先将命令的结果保存到文件output.txt,然后使用`uniq`过滤掉重复内容。
2. `sort | uniq`:首先通过`sort`对结果排序,然后再用`uniq`去重。这适用于按顺序排列后需要去重的情况。
```
command | sort | uniq -u
```
`-u`选项表示只显示唯一的行。
然而,如果需要实时去除重复显示而不涉及文件操作,通常需要配合前一个输出(如`history`命令)以及脚本语言(如bash的`readarray`)来实现。比如,在bash shell中,你可以这样做:
```sh
last_command=; while read -r line; do
if [ "$line" != "$last_command" ]; then
echo $line
last_command=$line
fi
done < <(history)
```
这个脚本会读取历史命令,并跳过连续相同的命令。
阅读全文