Например, я могу скопировать файл в буфер обмена следующим образом:
clip < file.txt
(Теперь содержимое file.txt
находится в буфере обмена.)
Как я могу сделать обратное:
???? > file.txt
Итак, содержимое буфера обмена будет в file.txt
?
Например, я могу скопировать файл в буфер обмена следующим образом:
clip < file.txt
(Теперь содержимое file.txt
находится в буфере обмена.)
Как я могу сделать обратное:
???? > file.txt
Итак, содержимое буфера обмена будет в file.txt
?
Вы можете использовать программное обеспечение paste.exe, чтобы вставить текст так же, как вы описываете.
http://www.c3scripts.com/tutorials/msdos/paste.html
С его помощью вы можете:
paste | command
чтобы вставить содержимое буфера обмена Windows во вход указанной командной строки
или
paste > filename
чтобы вставить содержимое буфера обмена в указанный файл.
Если вы соглашаетесь использовать PowerShell
(а не cmd
), вы можете использовать Get-Clipboard именно так, как вы искали.
Get-Clipboard > myfile.txt
Преимущество этого метода в том, что вам нечего устанавливать.
Примечание: вместо clip
вы можете использовать Set-Clipboard, который имеет больше опций.
Примечание 2: Если вы действительно хотите запустить его из cmd
, вы можете вызвать powershell
как в следующем примере powershell -command "Get-Clipboard | sort | Set-Clipboard"
.
Уточняющий ответ от @Kpym:
powershell -command "Get-Clipboard" > file.txt
Это напрямую отвечает на вопрос без использования стороннего инструмента.
Существуют команды сторонних клипов, которые работают двунаправленно.
Здесь один:
CLIP - Copy the specified text file to the clip board
Copyright (c) 1998,99 by Dave Navarro, Jr. ([email protected])
У меня есть пара утилит (до того, как команда Clip была частью окон), доступных на этой странице:
http://www.clipboardextender.com/general-clipboard-use/command-window-output-to-clipboard-in-vista
Есть две утилиты: Clip2DOS и DOS2Clip. Вы хотите Clip2DOS:
Clip2DOS Copyright 2006 Thornsoft Development
Сбрасывает текст буфера обмена (1024 байта) в stdout.
Использование: Clip2Dos.exe > out.txt
Результат: текст находится в файле.
Пределы: 1024 байта.
Лицензия: бесплатно, как в Free Beer!
http://www.thornsoft.com/dist/techsupport/dos2clip.zip
ВКЛЮЧЕН ИСТОЧНИК ДЕЛЬФА!
И вот, вот это (Clip2DOS.dpr):
{Clip2DOS - copyright 2005 Thornsoft Development, Inc. All rights reserved.}
program Clip2Dos;
{$APPTYPE CONSOLE}
uses
Clipbrd,
ExceptionLog,
SysUtils;
var
p : Array[0..1024] of Char;
begin
try
WriteLn('Clip2DOS Copyright 2006 Thornsoft Development');
Clipboard.GetTextBuf(p,1024);
WriteLn(p);
except
//Handle error condition
on E: Exception do
begin
beep;
Writeln(SysUtils.format('Clip2DOS - Error: %s',[E.Message]));
ExitCode := 1; //Set ExitCode <> 0 to flag error condition (by convention)
end;
end
end.
Вот CLIP-программа Дейва Наварро, о чем говорится в ответе @foxidrive. Это упоминается в статье здесь: copying-from-clipboard-to-xywrite
Ссылка на скачивание вместе со многими другими ресурсами находится на этой странице: http://www.lexitec.fi/xywrite/utility.html
Вот прямая ссылка на скачивание: "СКАЧАТЬ Clip.exe Скопировать из и в буфер обмена Дейвом Наварро-младшим"
Используя функцию определения макроса doskey, вы можете сделать:
doskey unclip=(powershell -command "Get-Clipboard") $*
Тогда (например)
dir/b | clip
unclip | sort/r
Я знаю, что мне очень поздно отвечать, но вы могли бы написать:
type file.txt | clip
Таким образом, содержимое буфера обмена будет содержать файл file.txt
Этот грязный трюк работал для моих нужд, и он поставляется с Windows!
notepad.exe file.txt
Ctrl + V, Ctrl + S, Alt + F, X