Jak mogę załadować zawartość pliku do schowka?


81

Mam pliki, w których muszę skopiować ich zawartość do innego pliku lub do aplikacji i zamiast ich otwierać, zaznacz cały tekst, a następnie skopiuj i wklej. Chciałbym wiedzieć, czy mogę skutecznie catzawrzeć zawartość pliku do schowka. czy to możliwe?

Program Windows byłby w porządku, ale coś, co działa na Linuksie, też byłoby przydatne. Nie używam komputera Mac, ale może być przydatny dla innych. Punkty bonusowe, jeśli można to zrobić w wierszu poleceń.


1
Aha, wiedziałem, że wcześniej zostało to zadane, dla systemu Windows: „Jak potokować tekst z wiersza polecenia do schowka” na superuser.com/questions/97762/... Może więc pozostaw to otwarte dla Linuksa?
Arjan

1
Przedmieście. Wygląda na to, że mogę do tego użyć clip.exe. Nadal chciałbym wersji bez wiersza poleceń. Może poprzez menu kontekstowe Eksploratora Windows?
Jonathon Watney

Odpowiedzi:



51

xclip (prawdopodobnie dostępny w repozytoriach systemu Linux) będzie działał dla każdego systemu X11, w tym dla większości wersji Linuksa, a nawet X działa pod Windows lub Mac OSX.

Przykładowe użycie: xclip -sel clip < ~/.ssh/id_rsa.pub


23
Przykładowe użycie:xclip -sel clip < ~/.ssh/id_rsa.pub
wim


13

W systemie Linux i ewentualnie innych systemach obsługujących xclip:

xclip -i -selection c file_to_copy_to_clipboard.txt

Widziałem też @JustinSmith, xclipale nie znalazłem żadnego przykładu, więc sam musiałem to sprawdzić.

Kolejny użyteczny: wklej schowek do pliku.

xclip -o -selection c > file_to_paste_to.txt

Źródło


2

użyj polecenia „typ” jako odpowiednika „cat” w systemie Windows, aby potokować zawartość plików w formacie tekstowym do standardowego wyjścia (standardowe wyjście), ponieważ jest to emulator terminala / monitu, którego używasz (CMD w systemie Windows). Możesz więc połączyć polecenia w coś takiego:

type myFile.txt > clip 

teraz zawartość pliku myFile.txt jest przenoszona do bufora clipBoard (myślę, że to tylko bufor, ponieważ nie jest linuksem). Jest to również wartość globalna, więc jedna wartość jest utrzymywana jednocześnie dla całego systemu operacyjnego. To dotyczy funkcji „kopiuj”, teraz „wklej”:

  • Albo chcesz dołączyć do istniejącego pliku wartości CLIP jak zwykle:

    wpisz clip >> target.txt (lub plik docelowy - doda dane bez usuwania istniejącego w tym pliku docelowym)

  • Lub chcesz dodać / utworzyć nowy plik z wartościami CLIP, takimi jak:

    wpisz clip> target.txt (lub plik docelowy - doda dane lub OVERWRITE oznacza usunięcie istniejącego pliku w tym pliku docelowym)


1

Użyj tego programu f2clip. Uruchom go z wiersza poleceń. Kopiuje zawartość pliku do schowka. Używam go do kopiowania plików tekstowych do przeglądarki internetowej w celu dalszego przetwarzania. Pobierz go z http://smrz.xf.cz/f2clip.exe lub napisz własny z tego źródła (to jest brzydkie):

 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.

Przepraszam.


1
+1. Doceniam ten wysiłek, chociaż uważam, że xclip jest lepszym rozwiązaniem.
0xc0de,
Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.