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

Comment puis-je charger le contenu d'un fichier dans le presse-papiers ?

J'ai un fichier dont je dois copier le contenu dans un autre fichier ou dans une application et plutôt que de l'ouvrir, je sélectionne tout le texte puis je fais un copier-coller Je voudrais savoir si je peux effectivement cat le contenu du fichier dans le presse-papiers. Est-ce possible ?

Un programme Windows serait bien, mais quelque chose qui fonctionne sous Linux serait également utile. Je n'utilise pas de Mac, mais cela pourrait être utile à d'autres. Points bonus si cela peut être fait en ligne de commande.

Réponses (6)

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

Puisque vous n'avez pas demandé pour Macs : cat file | pbcopy (et aussi pbpaste) pour ceux-là.

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

xclip (probablement disponible dans les dépôts de votre système Linux) fonctionnera pour tout système X11, y compris la plupart des versions de Linux, ou même X fonctionnant sous Windows ou Mac OSX.

Exemple d'utilisation : xclip -sel clip < ~/.ssh/id_rsa.pub

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

Sous Linux, vous pouvez utiliser xsel pour imiter pbcopy et pbpaste :

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

Source : pbcopy et pbpaste pour Linux ](http://web.archive.org/web/20120626184619/http://whereswalden.com/2009/10/23/pbcopy-and-pbpaste-for-linux) [ Where’s Walden ?

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

Sur Linux et d'autres systèmes éventuels qui supportent xclip :

xclip -i -selection c file_to_copy_to_clipboard.txt

J'ai vu que @JustinSmith mentionnait également xclip mais qu'il manquait un exemple, alors j'ai dû le chercher moi-même.

Un autre exemple utile : collez votre presse-papiers dans un fichier.

xclip -o -selection c > file_to_paste_to.txt

Source

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

utilisez la commande “type” comme équivalent de “cat” dans windows pour faire passer le contenu des fichiers au format texte dans stdout (sortie standard) car c'est l'émulateur de Terminal/prompt que vous utilisez (CMD dans windows). Vous pouvez donc combiner les commandes en quelque chose comme ceci :

type myFile.txt > clip

maintenant le contenu de monFichier.txt est transféré dans le tampon du ClipBoard (je pense que c'est juste un tampon puisque ce n'est pas linux). C'est aussi une valeur globale, donc une valeur est conservée à la fois dans tout le système d'exploitation. C'est donc pour la fonction “copier”, maintenant pour le “coller” :

  • Soit vous voulez ajouter à un fichier existant les valeurs du CLIP comme d'habitude :

  • Soit vous voulez ajouter/créer un nouveau fichier avec les valeurs du CLIP comme :

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

Utilisez ce programme f2clip. Exécutez-le à partir de la ligne de commande. Il copie le contenu du fichier dans le presse-papiers. Je l'utilise pour copier des fichiers texte dans le navigateur web pour un traitement ultérieur. Téléchargez-le à partir de http://smrz.xf.cz/f2clip.exe ou écrivez le vôtre à partir de cette source (c'est moche) :

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.

Désolé.