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

如何将Bash格式txt文件转换为适配Power Pivot的逐行拆分格式

格式转换实现方案

你可以根据自己常用的运行环境选对应方案,两种方案输出的文件都直接适配Power Pivot导入要求,不会修改原始的without_Commas.txt文件。


方案1:Bash环境(Linux/macOS/Windows WSL)

直接在文件所在目录运行下面的awk单行命令即可:

awk -F ' = ' '{split($2, val_list, /[[:space:]]+/); for (i in val_list) print $1 "\t" val_list[i]}' without_Commas.txt > powerpivot_ready.txt

命令逻辑说明:

  • 以=作为分隔符拆分每行,第一部分直接拿到用户名
  • 将等号后的值集合按空白字符拆分为单个值的数组
  • 遍历数组,逐行输出「用户名+制表符+单个值」的格式,结果写入新文件
  • 自动兼容值前后多余空格、值之间多个空格的情况,也能正确处理示例中带变音符号的非英文字符

方案2:Windows原生PowerShell环境

不需要安装额外工具,在文件所在目录打开PowerShell运行以下代码即可:

Get-Content .\without_Commas.txt | ForEach-Object {
    $lineParts = $_ -split ' = ', 2
    $userName = $lineParts[0].Trim()
    $allValues = $lineParts[1].Trim() -split '\s+'
    foreach ($singleVal in $allValues) {
        "$userName`t$singleVal"
    }
} | Out-File .\powerpivot_ready.txt -Encoding UTF8

代码逻辑说明:

  • 逐行读取原始文件,按第一个出现的=拆分行内容,避免值本身带等号的异常情况
  • 自动去除首尾多余空格,将多个值按任意空白字符拆分
  • 输出文件用UTF8编码,避免特殊字符乱码,分隔用制表符完全匹配给出的目标格式

处理完成后打开powerpivot_ready.txt核对即可:单值的行会原样保留用户名+值的结构,多值的行会自动拆分为多行,和需要的输出规则完全一致。


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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.26 15:48:16