一种在Bash中转置文件的有效方法
发布时间:2020-12-15 16:45:48 所属栏目:安全 来源:网络整理
导读:我有一个巨大的制表符分隔的文件格式化这样 X column1 column2 column3row1 0 1 2row2 3 4 5row3 6 7 8row4 9 10 11 我想使用只有bash命令(我可以写一个十行左右的Perl脚本,这样做,但它的执行速度比本机bash函数)更有效的方式转置它。所以输出应该是这样 X
我有一个巨大的制表符分隔的文件格式化这样
X column1 column2 column3 row1 0 1 2 row2 3 4 5 row3 6 7 8 row4 9 10 11 我想使用只有bash命令(我可以写一个十行左右的Perl脚本,这样做,但它的执行速度比本机bash函数)更有效的方式转置它。所以输出应该是这样 X row1 row2 row3 row4 column1 0 3 6 9 column2 1 4 7 10 column3 2 5 8 11 我想到这样的解决方案 cols=`head -n 1 input | wc -w` for (( i=1; i <= $cols; i++)) do cut -f $i input | tr $'n' $'t' | sed -e "s/t$/n/g" >> output done 但它很慢,似乎不是最有效的解决方案。我在this post看到了一个解决方案vi,但它仍然过慢。任何想法/建议/辉煌的想法? (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |