194. Transpose File
給定一個文本文件 file.txt,轉置其內容。
你可以假設每行具有相同數量的列,每個字段由空格字符分隔。
你可以假設每行具有相同數量的列,每個字段由空格字符分隔。
範例:
如果 file.txt 包含以下內容:
name age
alice 21
ryan 30
則輸出如下:
則輸出如下:
name alice ryan
age 21 30
#!/bin/bash
# Read from the file file.txt and print its transposed content to stdout
awk '
{
for (i = 1; i <= NF; i++) {
if (NR == 1) {
transpose[i] = $i;
} else {
transpose[i] = transpose[i] " " $i;
}
}
}
END {
for (i = 1; i <= length(transpose); i++) {
print transpose[i];
}
}
' file.txt
3.93MB, 60ms