首页 > 解决方案 > 连接一个文本文件中的字符串并使用 bash 命令将其存储在变量中

问题描述

我在文本文件中有 500 多个用户名,每个名称都在不同的行中,我想分批读取 10 个名称并将其存储在一个新的文本文件中。

输入:

Name1
Name2
Name3
Name4
Name5
Name6
Name7
Name8
Name9
Name10
Name11
Name22
Name13
Name14
Name15
Name16
Name17
Name18
Name19
Name20

输出:

Name1,Name2,Name3,Name4,Name5,Name6,Name7,Name8,Name9,Name10
Name11,Name12,Name13,Name14,Name15,Name16,Name17,Name18,Name19,Name20

我附上了包含我的原始数据的输入文本,我还附上了我期望的输出格式。

有人可以帮忙吗?

标签: bashshellawk

解决方案


你可以使用这个awk

awk '{u = u s $0; s=","} !(NR%10){print u; u = s = ""}' file

或这个:

awk '{ORS=RS} NR%10{ORS=","}1' file

推荐阅读