我有一个批处理文件,我的程序可以自动使用剪贴板。
但是我想要清空剪贴板,尝试了以下方法:
Original Answer翻译成"最初的回答"
echo>nul|clip
有没有其他方法清空Windows剪贴板?
我有一个批处理文件,我的程序可以自动使用剪贴板。
但是我想要清空剪贴板,尝试了以下方法:
Original Answer翻译成"最初的回答"
echo>nul|clip
有没有其他方法清空Windows剪贴板?
这里还有另一种方法可以实现。看起来至少可以清除 CF_TEXT 和 CF_BITMAP。需要测试以查看是否可以清除所有 CF_* 类型。
powershell -NoLogo -NoProfile -Command "Set-Clipboard -Value $null"
好的,最合适的方法(至少我认为)是将什么也没有(nul
)重定向(redirect)到标准输入(句柄0
),然后通过管道符(|
)将其传输给clip
命令,例如:< nul clip
。但由于该命令设计得非常糟糕,因为似乎只能使用文件进行输入重定向(<
),所以这种方法无法实现。
所以需要使用管道符(|
),它仍然允许多种方法:
echo/> nul | clip
break | clip
(rem/) | clip
type nul | clip
goto | clip
call | clip
exit | clip
1
)输出任何内容的命令。如果您想使用 Powershell 完成此操作:
Add-Type -AssemblyName System.Windows.Forms
[System.Windows.Forms.Clipboard]::Clear()
批处理
还有一些批处理的方法:
<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
< nul clip
是什么意思? - aschipflbreak|clip
(清除剪贴板中的文本;如果有图片(或可能是任何文本之外的对象),则没有影响)(@aschipfl你的不起作用(出乎意料)) - Stephanrem/ | clip
是怎么工作的呢?(暂时无法测试,我在使用手机) - aschipflDer Befehl "rem/" ist entweder falsch geschrieben oder konnte nicht gefunden werden.
(只有rem/
不带管道符号才有效) - Stephan(rem/) | clip
这样写就可以了;使用< nul clip
失败的时候真是太不合逻辑了,设计得真糟糕! - aschipfl