gpt4 book ai didi

linux - 将一行与其后续行进行比较

转载 作者:行者123 更新时间:2023-12-02 02:06:50 26 4
gpt4 key购买 nike

我有一个名为 file.txt 的文件,其中包含以下格式的数据:

John
file
Abr
John
Tutu

我可以使用以下方式逐行读取文件:

#!/bin/sh
while read fl
do
echo $fl
done < file.txt

但是我想打印一行及其后续行

我尝试了脚本:

#!/bin/sh
prev=""
while read fl; do
prev="$fl"
done < file.txt

但是这个脚本只用连续的行来做事情。请提出一些更好的解决方案。

预期输出:

John  file
John Abr
John John
John Tutu

then
file Abr
file John
file Tutu

then
Abr John
Abr Tutu

then
John Tutu

最佳答案

awk 的空 RS 可能适合您的数据:

awk -F '\n' -v RS= '{for (i=1;i<NF;++i) for (j=i+1;j<=NF;++j) print $i,$j}' file

关于linux - 将一行与其后续行进行比较,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/68321072/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com