gpt4 book ai didi

powershell - 使用 PowerShell 将输出通过管道传输到剪贴板

转载 作者:行者123 更新时间:2023-12-02 23:53:03 25 4
gpt4 key购买 nike

编辑:2020 年 10 月 23 日

参见postanote's answer .

编辑:2015 年 5 月 14 日

3年后,我想我会分享我的ClipboardModule(我希望我被允许):

Add-Type -AssemblyName System.Windows.Forms

Function Get-Clipboard {
param([switch]$SplitLines)

$text = [Windows.Forms.Clipboard]::GetText();

if ($SplitLines) {
$xs = $text -split [Environment]::NewLine
if ($xs.Length -gt 1 -and -not($xs[-1])) {
$xs[0..($xs.Length - 2)]
} else {
$xs
}
} else {
$text
}
}

function Set-Clipboard {
$in = @($input)

$out =
if ($in.Length -eq 1 -and $in[0] -is [string]) { $in[0] }
else { $in | Out-String }

if ($out) {
[Windows.Forms.Clipboard]::SetText($out);
} else {
# input is nothing, therefore clear the clipboard
[Windows.Forms.Clipboard]::Clear();
}
}


function GetSet-Clipboard {
param([switch]$SplitLines, [Parameter(ValueFromPipeLine=$true)]$ObjectSet)

if ($input) {
$ObjectSet = $input;
}

if ($ObjectSet) {
$ObjectSet | Set-Clipboard
} else {
Get-Clipboard -SplitLines:$SplitLines
}
}

Set-Alias cb GetSet-Clipboard

Export-ModuleMember -Function *-* -Alias *

我通常使用cb别名(用于GetSet-Clipboard),因为它有两种方式,即可以获取或设置剪贴板:

cb                # gets the contents of the clipboard
"john" | cb # sets the clipboard to "john"
cb -s # gets the clipboard and splits it into lines

最佳答案

如果您有 WMF 5.0,PowerShell 包含两个新的 cmdlet:

获取剪贴板和设置剪贴板

关于powershell - 使用 PowerShell 将输出通过管道传输到剪贴板,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13127578/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com