题解 | #转置文件的内容#
转置文件的内容
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 列的内容。
巨人网络成长空间 114人发布
查看26道真题和解析