Raccourci clavier pour coller le contenu du Presse-papiers dans la fenêtre d'invite de commande (Win XP) [fermé]

StackOverflow https://stackoverflow.com/questions/131955

  •  02-07-2019
  •  | 
  •  

Question

Existe-t-il un raccourci clavier pour coller le contenu du Presse-papiers dans une fenêtre d'invite de commande sous Windows XP (au lieu d'utiliser le bouton droit de la souris)?

Le décalage + Insérer typique ne semble pas fonctionner ici.

Était-ce utile?

La solution

J'utilise personnellement un petit script AutoHotkey pour remapper certaines fonctions du clavier, pour la fenêtre de la console (CMD) I utiliser:

; Redefine only when the active window is a console window 
#IfWinActive ahk_class ConsoleWindowClass

; Close Command Window with Ctrl+w
$^w::
WinGetTitle sTitle
If (InStr(sTitle, "-")=0) { 
    Send EXIT{Enter}
} else {
    Send ^w
}

return 


; Ctrl+up / Down to scroll command window back and forward
^Up::
Send {WheelUp}
return

^Down::
Send {WheelDown}
return


; Paste in command window
^V::
; Spanish menu (Editar->Pegar, I suppose English version is the same, Edit->Paste)
Send !{Space}ep
return

#IfWinActive 

Autres conseils

Oui .. mais maladroit. Lien

alt + Espace , e , k < - pour la copie et
alt + espace , e , p < - pour coller.

Pas vraiment lié à la programmation, mais j’ai trouvé this sur Google, il n'y a pas de raccourci clavier direct , mais le rend un peu plus rapide.

Pour activer ou désactiver le mode QuickEdit:

  1. Ouvrez le programme MS-DOS ou l'invite de commande.
  2. Cliquez avec le bouton droit sur la barre de titre et appuyez sur Propriétés.
  3. Sélectionnez l'onglet Options.
  4. Cochez ou décochez la case Mode d'édition rapide.
  5. Appuyez sur OK.
  6. Dans la boîte de dialogue Appliquer les propriétés au raccourci, sélectionnez la fenêtre Appliquer les propriétés à la fenêtre actuelle uniquement si vous souhaitez modifier le paramètre QuickEdit pour cette session de cette fenêtre uniquement ou sélectionnez le raccourci Modifier qui a démarré cette fenêtre pour modifier le paramètre QuickEdit de tous. invocations futures de l'invite de commande ou du programme MS-DOS.

QuickEdit

Pour copier du texte lorsque QuickEdit est activé:

  1. Cliquez et faites glisser le pointeur de la souris sur le texte souhaité.
  2. Appuyez sur Entrée (ou cliquez avec le bouton droit n'importe où dans la fenêtre) pour copier le texte dans le Presse-papiers.

Pour coller du texte lorsque QuickEdit est activé:

  1. Cliquez avec le bouton droit n'importe où dans la fenêtre.

Pour copier du texte lorsque QuickEdit est désactivé:

  1. Cliquez avec le bouton droit sur la barre de titre, appuyez sur Modifier dans le menu, puis appuyez sur Mark.
  2. Faites glisser la souris sur le texte que vous souhaitez copier.
  3. Appuyez sur Entrée (ou cliquez avec le bouton droit n'importe où dans la fenêtre) pour copier le texte dans le Presse-papiers.

Pour coller du texte lorsque QuickEdit est désactivé:

  1. Cliquez avec le bouton droit sur la barre de titre, appuyez sur Modifier dans le menu, puis sur Coller.

Merci Pablo, exactement ce que je cherchais! Toutefois, si je peux me permettre d’améliorer légèrement votre script, je suggère de remplacer votre macro ^ V par le texte suivant:

; Use backslash instead of backtick (yes, I am a C++ programmer).
#EscapeChar \

; Paste in command window.
^V::
StringReplace clipboard2, clipboard, \r\n, \n, All
SendInput {Raw}%clipboard2%
return

L'avantage d'utiliser SendInput est que

  • il ne repose pas sur le menu système d'invite de commande ayant un & "; Alt + Espace E P &"; élément de menu pour faire le collage (fonctionne pour l'anglais et l'espagnol, mais pas pour toutes les langues).
  • cela évite le scintillement désagréable que vous obtenez lorsque le menu est créé et détruit.

Remarque, il est important d'inclure le " {Raw} " dans la commande SendInput, au cas où le presse-papier contiendrait & ";!!!"! ", &" + & ", &"; ^ & "; ou " # ".

Remarque, il utilise StringReplace pour supprimer les caractères de retour chariot Windows en excès. Merci hugov pour cette suggestion!

Il existe également un excellent outil open source appelé clink , qui étend la cmd de nombreuses fonctionnalités. L’un d’eux est d’utiliser ctrl + v pour insérer du texte.

Voici un outil gratuit qui le fera sous Windows. Je le préfère à un script car il est facile à configurer. Il s’exécute comme une application native rapide, fonctionne sous XP et versions supérieures, possède des paramètres de configuration permettant de remapper les touches Copier / Coller / Sélection pour les fenêtres de commande:

 entrez la description de l'image ici

De plus, je connais les développeurs.

La

méthode la plus simple consiste simplement à copier le texte que vous souhaitez coller dans cmd et à ouvrir cmd goto & "propriétés &"; --- > " option " onglet ---- > cochez la case (donnez une coche) " mode quickdit " et cliquez sur & "ok &"; ..... vous pouvez maintenant coller n'importe quel texte du Presse-papiers en Clic droit dans votre souris.

Merci ..

Merci, Pablo, d’avoir fait référence à l’utilitaire AutoHotkey. Depuis que j'ai Launchy installé qui utilise Alt + Espace je devais le modifier mais pour ajouter la clé Shift comme indiqué:

; Paste in command window
^V::
; Spanish menu (Editar->Pegar, I suppose English version is the same, Edit->Paste)
Send !+{Space}ep
return

Ce n’est pas vraiment un raccourci mais juste un accès rapide au menu de contrôle: Alt-espace E P

Si vous pouvez utiliser votre souris, un clic droit sur la fenêtre cmd fonctionne comme une pâte lorsque je l'ai essayée.

Théoriquement, l’application dans l’invite DOS dispose de son propre presse-papiers et de ses raccourcis. Importer du texte à partir du Presse-papiers Windows est & Quot; extra & Quot ;. Cependant, vous pouvez utiliser Alt-Space pour ouvrir le menu système de la fenêtre Invite, puis appuyer sur E, P pour sélectionner Edition, menu Coller. Cependant, MS pourrait fournir un raccourci en utilisant Win-key. Il n'y a aucune chance d'être utilisé dans une application DOS.

Il m'a fallu un peu de temps pour comprendre pourquoi votre script AutoHotkey ne fonctionne pas avec moi:

; Use backslash instead of backtick (yes, I am a C++ programmer).
#EscapeChar \

; Paste in command window.
^V::
StringReplace clipboard2, clipboard, \r\n, \n, All
SendInput {Raw}%clipboard2%
return

En fait, il s’appuie sur les frappes au clavier et par conséquent sur la disposition du clavier! Donc, quand vous êtes, comme moi, malheureux de n'avoir qu'un clavier AZERTY, votre suggestion ne fonctionne tout simplement pas. Et pire encore, je n’ai trouvé aucun moyen facile de remplacer la méthode SendInput ou de modifier son environnement pour résoudre ce problème. Par exemple, SendInput & Quot; 1 & Quot; n'envoie simplement pas le chiffre 1.

Je devais transformer chaque caractère en son unicode pour le faire fonctionner sur mon ordinateur:

#EscapeChar \

; Paste in command window.
^V::
StringReplace clipboard2, clipboard, \r\n, \n, All
clipboard3 := ""
Loop {
    if (a_index>strlen(clipboard2))
     break 
    char_asc := Asc(SubStr(clipboard2, a_Index, 1))   
    if (char_asc > 127 and char_asc < 256)
     add_zero := "0"
    else
     add_zero := "" 
    clipboard3 :=  clipboard3  . "{Asc " .  add_zero . char_asc . "}"
}
SendInput %clipboard3%
return

Pas très simple ...

Si vous utilisez le gestionnaire de presse-papiers Ditto (source ouverte, gratis), pouvez simplement utiliser le raccourci pour coller depuis Ditto, et il collera le presse-papiers dans CMD pour vous.

 entrer la description de l'image ici

Vous pouvez utiliser Texter et créer quelque chose d’improbable comme:

./ p, déclenché par un espace et remplaçant le texte par% c

Je viens de le tester et cela fonctionne bien. La seule chose à faire est d'utiliser une séquence rare, car Texter ne peut pas le limiter à la seule commande.

Il existe probablement d'autres utilitaires de ce type qui pourraient fonctionner, voire même AutoHotKey , sur lequel Texter est construit pourrait mieux le faire, mais Texter est facile: -)

Une méthode plus simple consiste à utiliser Windows PowerShell au lieu de cmd. ça marche très bien avec texter.

J'ai récemment constaté que l'invite de commande prend en charge le menu contextuel via le clic droit de la souris. Vous pouvez trouver plus de détails ici: http://www.askdavetaylor.com/copy_paste_with_microsoft_mocrosoft / p>

Une solution assez simple peut être Console 2 , redéfinir les clés et c'est parti.

Si vous êtes un utilisateur Cygwin, vous pouvez ajouter ce qui suit à votre fichier ~ / .bashrc:

stty lnext ^q stop undef start undef

Et les éléments suivants dans votre fichier ~ / .inputrc:

"\C-v": paste-from-clipboard
"\C-C": copy-to-clipboard

Redémarrez votre terminal Cygwin.

(Remarque: j'ai utilisé un C majuscule pour la copie, car CTRL + c est affecté à la fonction de pause sur la plupart des consoles. Assaisonnez au goût.)

Source

Au lieu de & "cliquez avec le bouton droit de la souris sur &"; ... démarrez votre session (une fois dans la fenêtre d'invite de commande) en saisissant Alt / Barre d'espace. Cela ouvrira le menu de la fenêtre Invite de commandes et vous verrez vos raccourcis de commandes clavier habituels soulignés, comme dans l’interface graphique de Windows.

Bonne chance!

J'ai suivi les étapes de @ PabloG comme suit

  1. goto http://www.autohotkey.com/ - télécharger autohotkey
  2. suivez les étapes d'installation simples
  3. après l'installation, créez le nouveau fichier * .ahk comme suit, cliquez avec le bouton droit de la souris sur le bureau > nouveau > Autohotkey Script & Gt; giveAnyFileName.ahk
  4. faites un clic droit sur ce fichier > Modifier
  5. Copier coller le script autohotkey donné par @PabloG dans sa réponse
  6. enregistrer et fermer
  7. double-cliquez sur le fichier à exécuter
  8. Terminé, vous devriez pouvoir utiliser Ctrl + v pour coller l'invite de commande

Sous Invite de commande VISTA: Cliquez sur l'icône du système Sélectionner les valeurs par défaut dans le menu Dans l'onglet Options du groupe Options, j'ai & «Mode d’édition rapide» & «;», & «Mode d’insertion &» et & «Complétion automatique &»; choisi Je pense que le & Quot; mode d’édition rapide & Quot; est ce qui le fait fonctionner.

Pour coller ce qui se trouve dans le Presse-papiers au point d’insertion: Clic droit. Pour copier depuis la fenêtre de commande   Sélectionnez en maintenant enfoncé le bouton gauche de la souris et en faisant glisser le pointeur sur ce que vous souhaitez copier.   Une fois sélectionné, clic droit   Pour coller au point d'insertion, cliquez à nouveau avec le bouton droit de la souris.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top