AWK拆分字符串,然后再将其清除

AWK拆分字符串,然后再将其清除,awk,split,delimiter,Awk,Split,Delimiter,需要帮助拆分以下内容 100GB@sdb,100GB@sdc 进入这个 sdb sdc 我所做的一切都给了我 sdb 100GB 对于任意数量的磁盘,请尝试: $ echo '100GB@sdb,100GB@sdc,10KB@sdd' | awk -F'[@,]' '{for (i=2;i<=NF;i+=2) printf "%s ",$i; print ""}' sdb sdc sdd 使用sed 使用bash 对于任意数量的磁盘,请尝试: $ echo '100GB@sdb,

需要帮助拆分以下内容

100GB@sdb,100GB@sdc
进入这个

sdb sdc
我所做的一切都给了我

sdb 100GB

对于任意数量的磁盘,请尝试:

$ echo '100GB@sdb,100GB@sdc,10KB@sdd' | awk -F'[@,]' '{for (i=2;i<=NF;i+=2) printf "%s ",$i; print ""}'
sdb sdc sdd 
使用sed 使用bash
对于任意数量的磁盘,请尝试:

$ echo '100GB@sdb,100GB@sdc,10KB@sdd' | awk -F'[@,]' '{for (i=2;i<=NF;i+=2) printf "%s ",$i; print ""}'
sdb sdc sdd 
使用sed 使用bash
另一个AWK命令:

% awk 'BEGIN{RS="[@,]";ORS=" "}NR%2 == 0' <<< '100GB@sdb,100GB@sdc'
sdb sdc

另一个AWK命令:

% awk 'BEGIN{RS="[@,]";ORS=" "}NR%2 == 0' <<< '100GB@sdb,100GB@sdc'
sdb sdc

我的问题是我不知道它将跨越多少个磁盘。任何地方都可能有1到10美元以上,所以2美元和4美元并不总是这样。@debow OPK。有关任意数量磁盘的更一般情况,请参阅更新。完美!谢谢。我的问题是我不知道它将跨越多少个磁盘。任何地方都可能有1到10美元以上,所以2美元和4美元并不总是这样。@debow OPK。有关任意数量磁盘的更一般情况,请参阅更新。完美!非常感谢。
% awk 'BEGIN{RS="[@,]";ORS=" "}NR%2 == 0' <<< '100GB@sdb,100GB@sdc'
sdb sdc
100GB@sdb,100GB@sdc
# 1    2    3    4  <- chunk