You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Ubuntu下文本列重排及Excel粘贴合并问题求解

解决多行文本转多列并排及Excel复制异常问题

问题1:调整分隔符与页面宽度解决内容合并

你遇到的内容合并问题,核心是pr默认用空格分隔列,后续处理时空格被压缩导致Excel识别错误。可以通过以下调整解决:

  • 给pr指定制表符作为列分隔符,同时设置足够大的页面宽度,避免列内容挤压:
cat text.txt | cut -f3 | awk '1; NR%4==0 {print ""}' | pr -W1000 -s$'\t' -40 -t

解释:

  • -W1000:设置页面宽度为1000,足够容纳40列内容
  • -s$'\t':用制表符作为列分隔符,避免空格压缩导致内容粘连
  • 去掉后续的column -t和tr,制表符本身就能让Excel正确识别列,无需二次处理

如果仍有问题,可进一步增大-W的值(比如-W2000),确保所有列完整显示。

问题2:直接实现4行并排的极简方案

无需依赖pr的参数调整,用awk可直接读取所有行后按4列格式重排,无需提前统计行数:

awk '{
    arr[NR] = $0
}
END {
    cols = 4  # 目标列数
    rows = int(NR / cols) + (NR % cols ? 1 : 0)
    for (i = 1; i <= rows; i++) {
        line = ""
        for (j = 0; j < cols; j++) {
            idx = i + j * rows
            if (idx <= NR) {
                line = line (line ? "\t" : "") arr[idx]
            }
        }
        print line
    }
}' text.txt

效果说明:

  • 自动按列优先排列:原第1、5、9...行作为第1列,第2、6、10...行作为第2列,以此类推
  • 用制表符分隔列,复制到Excel时自动识别为不同单元格,彻底避免内容合并
  • 适配任意输入行数(16行/160行均可),无需修改参数

内容的提问来源于stack exchange,提问作者KGee

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.03 14:12:43