Arrays 带字符串的bash脚本

Arrays 带字符串的bash脚本,arrays,bash,Arrays,Bash,我有一个用逗号分隔的完整姓名列表: second_surnameA first_surnameA, nameA second_surnameB first_surnameB, nameB second_surnameC first_surnameC, nameC .... 因此,我试图用bash脚本捕获每个文件中所有人(a、B、C)的姓名: second_surnameA first_surnameA, nameA second_surnameB first_surnameB, na

我有一个用逗号分隔的完整姓名列表:

second_surnameA first_surnameA, nameA second_surnameB first_surnameB, nameB second_surnameC first_surnameC, nameC ....
因此,我试图用bash脚本捕获每个文件中所有人(a、B、C)的姓名:

  second_surnameA first_surnameA, nameA

  second_surnameB first_surnameB, nameB

  second_surnameC first_surnameC, nameC
我执行:

cat names_file.txt | tr ',' '\n'

这几乎是我需要的,但不是我想要的。有什么想法吗?

使用
GNU
sed:

sed-re的/(\s++){3}/&\n/g'input_file | sed的/$/'>output_file

模式
(\S++){3}
匹配三次
{3}
由以下组成的组:一个或多个非空格
\S++
后跟一个或多个空格。替换字符串
&\n
为每个匹配的模式追加一行。第二个sed删除尾随空格并使用
GNU
sed写入
output\u文件

sed-re的/(\s++){3}/&\n/g'input_file | sed的/$/'>output_file
模式
(\S++){3}
匹配三次
{3}
由以下组成的组:一个或多个非空格
\S++
后跟一个或多个空格。替换字符串
&\n
为每个匹配的模式追加一行。第二个sed删除尾随空格并使用
awk
写入
output\u文件

awk '{for (i=1;i<=NF;i=i+3) print $i,$(i+1),$(i+2)}' inputfile
awk'{for(i=1;i带
awk

awk '{for (i=1;i<=NF;i=i+3) print $i,$(i+1),$(i+2)}' inputfile
awk'{for(i=1;i