思路:在linux的for循环场景中,处理文件/目录适合用shell,而处理文本更适合用awk,这方面在性能和效率都是awk更优。

于是直接用awk处理。构造awk的for循环,每次取一行,然后以内置变量NF为位置索引逆序输出该行的每个字段。

#!/bin/bash
awk -F ":" '{
	for(i=NF;i>=2;i--) {
		printf("%s:",$i);
	}
	print($1);
}' nowcoder.txt