2009-07-20 6 views

Répondre

1

Vous ne pouvez pas trouver une option, car plink ne fait pas la traduction du jeu de caractères - c'est géré par la fenêtre de commande de Windows. Pour modifier la traduction du jeu de caractères de la fenêtre de commande Windows avant de lancer plink, utilisez la commande "chcp". Pour obtenir utf-8, vous devez d'abord changer la police de la fenêtre de console en "Lucida Console". Ensuite, essayez "chcp 65001". Un inconvénient - J'ai trouvé qu'il y a quelque chose d'incroyablement lent et inefficace à propos de la console Windows quand elle fait utf-8 de telle sorte que si vous envoyez des données trop rapidement, plink va exploser et dire "Un périphérique connecté au système ne fonctionne pas ".

Cependant, je dois demander - pourquoi faites-vous cela? Vous devriez utiliser putty pour tout ce qui est interactif et pour tout ce qui n'est pas interactif, si vous redirigez la sortie dans un fichier, la traduction effectuée par la console Windows à ce moment-là n'a pas d'importance. Le fichier est alors dans utf-8, et quel que soit le programme Windows dans lequel vous l'ouvrez, vous devez le lui dire.

+0

Merci Daniel - la semaine dernière un collègue à moi m'a également informé du fait que la pièce de traduction est assurée par la fenêtre contenant les données de plink redirigées. Pour ce qui est de savoir pourquoi je fais cela avec - j'utilise plink pour ssh sur un serveur Linux depuis la ligne de commande de build de Visual Studio (http://msdn.microsoft.com/en-us/library/f35ctcxw.aspx). La redirection efficace de gcc rend la sortie de la machine linux vers la fenêtre de débogage de VS. En d'autres termes, utiliser VS comme IDE et le serveur Linux pour compiler du code C++. chcp 65001 dans VS n'a pas fonctionné - a dû changer le local par défaut sur Linux à POSIX –

+1

(PS Tim signifie les paramètres régionaux par défaut) J'ai eu ce problème de faire une chose similaire dans Eclipse. Je l'ai résolu en insérant 'export LC_ALL =" POSIX ";' avant ma commande 'make all' -' export LC_ALL = "POSIX"; fais tout – jedwards

1

Vous pouvez également configurer une session PuTTY comme vous le souhaitez et le charger via plink:

plink.exe -load my_session -l my_user_name -pw my_password <your command> 
Questions connexes