如何通过蝙蝠文件清除剪贴板?

时间:2019-07-28 17:46:27

标签: powershell batch-file

我有一些批处理文件,并且我的程序可以自动与剪贴板一起使用。

但是我想清除剪贴板,然后清除它,就像这样:

echo>nul|clip

还有其他方式吗?

4 个答案:

答案 0 :(得分:2)

最合理的方法(至少在我看来是这样),即对 STDIN 不做redirect<)(nul)({像0一样处理clip命令的< nul clip),由于该命令的设计糟糕,因此无法正常工作,因为输入重定向(<)似乎只能完成文件处理。

因此需要使用管道(|),该管道仍然允许以下几种方式:

echo/> nul | clip

break | clip

(rem/) | clip

type nul | clip

goto | clip

call | clip

exit | clip

以上所有方法均在管道左侧使用一条命令,该命令不会向 STDOUT 输出任何内容(句柄1)。

答案 1 :(得分:1)

如果要使用Powershell进行操作:

Add-Type -AssemblyName System.Windows.Forms
[System.Windows.Forms.Clipboard]::Clear()

答案 2 :(得分:0)

这是另一种方法。这似乎至少清除了CF_TEXT和CF_BITMAP。需要测试以查看是否清除了所有CF_ *类型。

powershell -NoLogo -NoProfile -Command "Set-Clipboard -Value $null"

答案 3 :(得分:0)

批处理

更多批处理方式:

<nul set /p="" | clip
dir >nul | clip 
cd %cd% | clip
pushd %cd% | clip
cd >nul | clip

VBscript

VBscript中的一种方法:

Dim IE
Set IE = CreateObject("InternetExplorer.Application")
IE.Navigate("about:blank")
IE.Document.ParentWindow.ClipboardData.SetData "text", ""
IE.Quit