【问题标题】:Powershell 5 clipboard - manually pasting "complex" clipboard content doesn't workPowershell 5剪贴板 - 手动粘贴“复杂”剪贴板内容不起作用
【发布时间】:2015-12-10 00:30:48
【问题描述】:

我刚刚在笔记本上安装了 Win10,并初步了解了所有新的命令行开关。

虽然使用简单的文本,例如:

PS C:\Users\SudoSandwich> $do = echo "sad"
PS C:\Users\SudoSandwich> $do | Set-Clipboard

例如,手动将其粘贴到记事本中效果很好,但我在处理一些更“复杂”的剪贴板内容时遇到了麻烦。 让我们使用dir | Set-Clipboard。 我知道在控制台中你必须使用Get-Clipboard -Format FileDropList 来取回它,但是将dir 的结果粘贴到记事本中呢?在这种情况下,粘贴显然是禁用的。

有人知道为什么这还不起作用吗?在控制台中选择输出并将其粘贴到记事本中的老式方法仍然可以正常工作。

【问题讨论】:

  • dir|Out-String|Set-Clipboard
  • 就是这样。有时它可以如此简单。谢谢 m8 你想把它设置为答案还是我应该这样做?

标签: powershell powershell-5.0


【解决方案1】:

您可以使用Out-String cmdlet 将任何复杂对象转换为您通常在控制台上看到的文本。然后您可以将该文本复制到剪贴板:

dir | Out-String | Set-Clipboard

【讨论】:

    【解决方案2】:

    我的假设是 dir 的管道输出是对象而不是 set-clipboard 不能复制的纯文本,您需要在将其复制到剪贴板之前将其扩展或转换为字符串,试试这个 [字符串[]] (目录) |设置剪贴板

    【讨论】:

    • 是的。像 PS 中的其他所有内容一样,剪贴板也是一个对象。它朝着正确的方向发展。与 -f 格式运算符一起,我可以获得我想要的输出。但是,我希望获得与您在控制台中看到的完全相同的输出,或者通过手动选择并将其复制到记事本
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2011-05-13
    • 2022-11-10
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2010-10-18
    相关资源
    最近更新 更多