加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 服务器 > 安全 > 正文

使用column命令的Bash错误:’column:line too long’

发布时间:2020-12-15 21:49:31 所属栏目:安全 来源:网络整理
导读:当我用输入文件键入此列命令时,我收到以下错误 column -t text.txt outputcolumn: line too longcolumn: line too longcolumn: line too longcolumn: line too longcolumn: line too longcolumn: line too long 当我查看文件输出时,似乎没有打印文件的前半部
当我用输入文件键入此列命令时,我收到以下错误

column -t text.txt > output
column: line too long
column: line too long
column: line too long
column: line too long
column: line too long
column: line too long

当我查看文件输出时,似乎没有打印文件的前半部分(从左到右).

有没有办法解决这个错误?有没有办法完全执行命令会做什么,否则没有这个错误?

样本输入(实际输入~640列)

column1column1  column2column2  column3 column4
03  2   45  3
5   6   7   8

样本输出(实际输出~640列)

column1column1  column2column2  column3  column4
03              2               45       3
5               6               7        8

解决方法

你可以尝试一个天真的awk实现:

awk 'NR==FNR{for(i=1;i<=NF;i++) 
        max[i] = length($i) > max[i] ? length($i) : max[i]; next} 
{ for(i=1;i<=NF;i++) printf "%-"max[i]"s  ",$i; printf "n"}' text.txt text.txt

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读