linux – 按列拆分分隔文件到较小的文件
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了linux – 按列拆分分隔文件到较小的文件,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含768字,纯文字阅读大概需要2分钟。
内容图文
![linux – 按列拆分分隔文件到较小的文件](/upload/InfoBanner/zyjiaocheng/962/3d7cf8cbf49a48848f04a60e8024d24b.jpg)
我熟悉linux中的split命令.如果我有一个100行长的文件,
split -l 5 myfile.txt
…将myfile.txt拆分为20个文件,每个文件有5行,并将它们写入文件.
我的问题是,我想通过专栏来做这件事.给定一个包含100列的文件,制表符分隔,是否有类似的命令将此文件拆分为20个较小的文件,每个文件有5列和所有行?
我知道如何使用剪切,但我希望有一个简单的UNIX命令,我从来没有听说过,如果不用perl或其他东西包裹剪切就可以实现这一点.
提前致谢.
解决方法:
#!/bin/bash
(($# == 2)) || { echo -e "\nUsage: $0 <file to split> <# columns in each split>\n\n"; exit; }
infile="$1"
inc=$2
ncol=$(awk 'NR==1{print NF}' "$infile")
((inc < ncol)) || { echo -e "\nSplit size >= number of columns\n\n"; exit; }
for((i=0, start=1, end=$inc; i < ncol/inc + 1; i++, start+=inc, end+=inc)); do
cut -f$start-$end "$infile" > "${infile}.$i"
done
内容总结
以上是互联网集市为您收集整理的linux – 按列拆分分隔文件到较小的文件全部内容,希望文章能够帮你解决linux – 按列拆分分隔文件到较小的文件所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。
来源:【匿名】