题解 | #转置文件的内容#

转置文件的内容

https://www.nowcoder.com/practice/2240cd809c8f4d80b3479d7c95bb1e2e

#!/bin/bash

# 读取文件的列数
column_count=$(awk 'END{print NF}' nowcoder.txt)

# 遍历每一列,将每一列的内容转换成一行
for i in $(seq ${column_count}); do
	line=$(cat nowcoder.txt | cut -d " " -f ${i})
	echo ${line}
done

使用 awk 工具读取文件 nowcoder.txt 的列数。awk 的 END 块将在处理完所有输入行之后执行。该块中的 print NF 语句将输出当前行的字段数,即列数。

seq ${column_count} 命令将生成一个从 1 到 column_count 的数字序列。

cut -d " " -f ${i} 命令将根据空格分隔符切割每一行,并输出第 i 列的内容。

全部评论

相关推荐

点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客企业服务