【问题标题】:copy paste tab delimited results into excel file将粘贴制表符分隔的结果复制到 excel 文件中
【发布时间】:2017-08-03 13:14:56
【问题描述】:

我创建了一个脚本来从 LDAP 数据库获取数据并将其写入一个文件,其中每个值都位于一行中,由制表符分隔。然后我尝试将该文件的内容复制并粘贴到excel中,但是它将每个“列”的所有制表符分隔的内容放在该行第一列的一行中,而不是将每一列数据放在它自己的行中在excel文件中。行粘贴很好。 例如,让我们模拟第一行

12121212 [] lastname,  firstname [] title [] phone [] manager

[] = 我试图以编程方式在我的数据输出中插入一个选项卡

这让我感到困惑,因为我故意让一个函数从我的 ldap 搜索结果中删除新行,并在该列的数据返回末尾添加一个选项卡。这里是 addTab 函数:

function addTab {
    res='           ' # res = "\t\tx"
    echo $1 | tr -d '\n'
    echo "$res" | tr -d '\n'

}

这就是我调用函数的方式(注意 $i 来自我用来通过循环迭代搜索的 UID 数组):

addTab `getattrVal $i employeeNumber`
addTab `getattrVal $i employeeType`
addTab `getattrVal $i ou`
addTab `getattrVal $i managerEmployeeNumber`

这里是 getattrVal 函数的代码

function getattrVale {
    /opt/bin/ldapsearch -QLLLZZH ldap://${VIP}:389/ -b $1 $2 | grep "$2:" |awk '{ print $2 }'

}

我什至尝试使用 column 命令生成漂亮甚至输出的列(即 column -t bashCreatedTabFile.txt),但我仍然无法在 Excel 电子表格中粘贴所需的内容。

我意识到可能有更好的方法可以做到这一点,但我认为理解为什么这不起作用对我的进步很重要。

【问题讨论】:

  • 如果我理解你的问题.. 不。我只是将标准输出写入文件,然后打开文件并复制文件内容并粘贴到 excel 文件中。所以我的假设是我应该使用包含的标签复制所有内容。但似乎标签只是空格..
  • 它将每一列的所有内容放在该行的第一列中的一行中。我会用一个例子来更新帖子。
  • “od -xc bashCreatedTabFile.txt”是否在预期的地方显示制表符和换行符?此外,如果您尝试导入 txt 文件(而不是剪切和粘贴),它是否正确检测到列分隔符?您也可以尝试粘贴到一个新的文本文件中,然后查看它是否正确(这是 Windows 吗?也许剪切和粘贴正在将制表符转换为空格?)
  • 我不确定在使用 od -xc file 命令时我在看什么,但我猜它不对。无法真正将输出粘贴到此评论中。

标签: excel bash


【解决方案1】:

我遇到了同样的问题。这不是最好的解决方案,但它确实有效。

将分隔符更改为逗号 (,)。像往常一样复制文本并粘贴到 Excel 中。它可能仍然是一列。突出显示该列,转到 Excel 中的数据 > 文本到列。

确保数据类型为“分隔符”,并选择“逗号”作为分隔符。我不知道为什么,但同样的事情似乎不适用于标签。

http://www.wikihow.com/Copy-Paste-Tab-Delimited-Text-Into-Excel

【讨论】:

    【解决方案2】:

    尝试使用表格的 html 输出。

    喜欢使用

    print(tabulate(table, headers, tablefmt="html"))
    
    <table>
    <tbody>
    <tr><th>item  </th><th style="text-align: right;">  qty</th></tr>
    <tr><td>spam  </td><td style="text-align: right;">   42</td></tr>
    <tr><td>eggs  </td><td style="text-align: right;">  451</td></tr>
    <tr><td>bacon </td><td style="text-align: right;">    0</td></tr>
    </tbody>
    </table>
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2020-06-06
      • 2020-02-13
      • 1970-01-01
      • 2023-03-11
      • 1970-01-01
      • 2023-03-24
      • 1970-01-01
      • 2018-09-13
      相关资源
      最近更新 更多