Can you use nircmd to help save clipboard contents to a Batch File variable?

Solution 1:

In a batch script, I wish to save the clipboard text into a variable. Having searched it seems that this is not possible without 3rd-party tools.

So sorry to say, but this is not true:


  • PowerShell paste clipboard:
Get-Clipboard|Foreach{$_} 

// or using aliases, shorter: gcb|?{$_}
  • VBScript paste clipboard:
WScript.Echo CreateObject("htmlfile").ParentWindow.ClipboardData.GetData("text")
  • Bat + Powershell
powershell -nOp -c  "Get-Clipboard|Foreach{$_}"

  • You don't need third-party tools to get the however of your clipboard, which is one or more lines:
@echo off 

for /f usebackq^tokens^=1*delims^=: %%i in (`(
powershell -nOp -c "gcb|%%{$_}"^)^|findstr /nr .
   `)do set "_vbCB_%%~i=%%~j" && set "_upto=%%~i"
    
for /l %%L in (1 1 %_upto%)do call echo\_vbCB_%%L: %%_vbCB_%%~L%%

  • Content on my ClipBoard:


Lorem ipsum dolor sit amet. Sed iure harum et esse error et velit earum. 
Et dolor perspiciatis id veniam dolor cum galisum asperiores. 
Ab doloremque omnis sed harum explicabo ut galisum 
veniam ut voluptas facere.

Sed amet corporis eos magnam voluptatem sed dolor alias. Et facere esse 
ea voluptates odit aut alias pariatur. Aut molestiae quam et saepe 
corrupti id quia facilis. Est labore temporibus qui eaque labore ab 
ipsa voluptatibus vel dolores galisum non aliquid earum id beatae 
rerum.

Eos nobis consequatur est accusantium sapiente et illum velit et 
libero quasi est consequatur fuga ea sunt molestias. Id enim vitae 
sed dolor similique qui voluptatem autem. Aut sunt perferendis in 
aperiam aspernatur nam assumenda aliquam hic laboriosam galisum.

  • Outputs:
_vbCB_1:
_vbCB_2:
_vbCB_3: Lorem ipsum dolor sit amet. Sed iure harum et esse error et velit earum.
_vbCB_4: Et dolor perspiciatis id veniam dolor cum galisum asperiores.
_vbCB_5: Ab doloremque omnis sed harum explicabo ut galisum
_vbCB_6: veniam ut voluptas facere.
_vbCB_7:
_vbCB_8: Sed amet corporis eos magnam voluptatem sed dolor alias. Et facere esse
_vbCB_9: ea voluptates odit aut alias pariatur. Aut molestiae quam et saepe
_vbCB_10: corrupti id quia facilis. Est labore temporibus qui eaque labore ab
_vbCB_11: ipsa voluptatibus vel dolores galisum non aliquid earum id beatae
_vbCB_12: rerum.
_vbCB_13:
_vbCB_14: Eos nobis consequatur est accusantium sapiente et illum velit et
_vbCB_15: libero quasi est consequatur fuga ea sunt molestias. Id enim vitae
_vbCB_16: sed dolor similique qui voluptatem autem. Aut sunt perferendis in
_vbCB_17: aperiam aspernatur nam assumenda aliquam hic laboriosam galisum.

Obs.: The first 2 lines are purposely blank to show that you get the entire contents of the ClipBoard, including blank lines, no matter where they are.