2010-02-25 21:35:38 +0000 2010-02-25 21:35:38 +0000
83
83

Как загрузить содержимое файла в буфер обмена?

У меня есть файлы, в которые мне нужно скопировать их содержимое в другой файл или в приложение, и вместо того, чтобы открыть его, выделите весь текст, затем скопируйте и вставьте его, я хотел бы знать, могу ли я эффективно 0x6 и содержимое файла в буфер обмена. Возможно ли это? Программа для Windows

подойдет, но то, что работает под Linux, тоже будет полезно. Я не использую Mac, но это может быть полезно для других. Бонусные очки, если это можно сделать в командной строке.

Ответы (6)

63
63
63
2010-02-25 21:51:07 +0000

Раз уж ты не спросил про Мака: cat file | pbcopy (и также pbpaste) для них.

51
51
51
2010-02-25 22:35:24 +0000

xclip (вероятно, доступно в репозитории вашей системы Linux) будет работать на любой системе X11, включая большинство версий Linux, или даже X, запущенный под Windows или Mac OSX.

Пример использования: xclip -sel clip < ~/.ssh/id_rsa.pub

35
35
35
2010-02-25 22:33:36 +0000

В Linux вы можете использовать xsel для имитации pbcopy и pbpaste:

alias pbcopy='xsel --clipboard --input'
alias pbpaste='xsel --clipboard --output'

Источник: Где Уолден? “ pbcopy и pbpaste для Linux

13
13
13
2012-11-05 06:17:33 +0000

На Linux и возможных других системах, поддерживающих xclip:

xclip -i -selection c file_to_copy_to_clipboard.txt

Я видел, как @JustinSmith также упоминал xclip, но пропустил пример, так что мне пришлось искать его самому.

Еще один полезный пример: вставьте буфер обмена в файл.

xclip -o -selection c > file_to_paste_to.txt

Источник

2
2
2
2017-06-06 10:44:32 +0000

используйте команду “type” в качестве эквивалента “cat” в окнах для переноса содержимого файлов в текстовом формате в stdout (стандартный вывод), т.е. используемый эмулятор терминала/диспетчера (CMD в окнах). Так что вы можете объединить команды в нечто подобное :

type myFile.txt > clip

теперь содержимое myFile.txt передается в буфер clipBoard (я думаю, что это просто буфер, так как это не linux). Это также глобальное значение, так что одно значение хранится в масштабе всей операционной системы. Так что это для функции “копирования”, теперь для “вставки” :

  • Либо вы хотите добавить к существующему файлу значения CLIP как обычно:

  • Либо вы хотите добавить/создать новый файл со значениями CLIP подобно :

1
1
1
2013-08-11 20:45:05 +0000

Используйте эту программу f2clip. Запустите ее из командной строки. Она копирует содержимое файла в буфер обмена. Я использую ее для копирования текстовых файлов в веб-браузер для дальнейшей обработки. Скачайте его с http://smrz.xf.cz/f2clip.exe или напишите свой собственный из этого источника (он уродливый):

program f2clip;

 {$APPTYPE CONSOLE}

 uses
SysUtils,
clipbrd;

var i,r:integer;
    s:string;
 f:file;
 buf:array[0..1024*1024-1] of byte;

 data:string;
 d:pointer;
 begin
 try

 { TODO -oUser -cConsole Main : Insert code here }
    if (paramcount=0) then begin
    writeln('parameters: f2clip filename.txt');
end else begin
    write('parameter count: ');
  writeln(paramcount);  
    for i:=1 to paramcount do begin
    s:=paramstr(i);
    writeln('file: ',s);

    assignfile(f,s);
    reset(f,1);
    BlockRead(f,buf,1024*1024,r);
    writeln('size: ',r);
    buf[r]:=0;

    d:=@(buf[0]);
    data:=PAnsiChar(d);
Clipboard.AsText := data;
    close(f);
  end;

  end;

 except
   on E:Exception do
     Writeln(E.Classname, ': ', E.Message);
 end;
end.

Извините.

Похожие вопросы

7
7
3
13
9