DarkMatter in Cyberspace
  • Home
  • Categories
  • Tags
  • Archives

Notes about Putty & Kitty


Kitty是putty的portable版本,所有配置保存在文本文件中(putty保存在注册表中), 新建kitty session比较好的方法是复制一份DefualtSettings文件,修改其中的字段, 而不通过kitty自己的配置界面,这个界面用起来很不方便,下面是配置过程:

  1. 定制默认配置:字体为11号Consolas,终端24行80列,

    Font\Consolas\ FontHeight\11\ TermHeight\24\ TermWidth\80\

  2. 复制文件DefaultSettings为747:ssh lichao@10.0.7.47,端口号22, 连接后自动运行脚本d:\apps\Kitty\Scripts\cat47.txt (转义字符的写法是%+16进制的ASCII码,例如"\"是%5C,":"是%3A)

    HostName\10.0.7.47\ Protocol\ssh\ PortNumber\22\ UserName\lichao\ Scriptfile\D%3A%5CApps%5CKitty%5CScripts%5Ccat47.txt\

  3. 编写自动运行脚本(如果需要的话):格式是一行预期一行发送 (见笔记“ Notes about Kitty ”);

  4. 保持密码(可选):启动配置界面(kitty.exe),加载747,输入登录密码 (密码是加密后存入配置文件的,无法直接在配置文件里写),保存747;

切换全屏模式

Ctrl + right click,点击菜单切换全屏,当连接的"FullScreenOnAltEnter"设置为true时, 也可以用Alt+Enter切换(在配置界面上的位置是Window->Behavior最后一项, 或者session文件中" FullScreenOnAltEnter\1\ ");

连接断开后自动关闭窗口

session文件中"CloseOnExit\1\"表示自动关闭,"CloseOnExit\0\"表示不自动关闭;

"AltF4\1\"表示可以用Alt+F4关闭窗口,0表示此组合键无效;

TCP连接

putty.exe -raw -P 例如:putty -raw 10.31.1.23 -P 3128

SSH自动登录

putty.exe -ssh -pw mypassword username@10.0.2.68

参考: http://superuser.com/questions/44106/is-there-a-way-to-auto-login-in-putty-with-a-password

文件传输

一次性传输:pscp

上传文件

将f:\hw.txt上传到219的/home/chad目录下: pscp -pw mypwd f:\*.txt chad@10.31.1.219:/home/chad/

下载文件

将96上的/home/chad/hw.txt文件下载到f:\下: pscp -pw mypwd chad@10.31.1.96:home/chad/*.txt f:\

将113上autoClient文件夹下所有文件拷贝到当前目录下: pscp -pw mypwd lichao@10.31.1.113:/home/lichao/autoClient/* ./autoClient/

注意本地的文件夹autoClient必须存在(pscp不能自己创建文件夹), 且pscp不支持/*/这样的多级目录拷贝;autoClient后面的/必须加, 否则会把autoClient当成拷贝文件的新名字;

这两种指令都可以在目标路径后面写上文件名,达到修改文件名的目的;

参考:putty文档 chapter 5.

交互式传输:psftp

  • 登录服务器:psftp -pw mypwd username@10.2.3.56

  • 查询服务器当前目录:pwd

  • 改变服务器当前目录:cd ...

  • 查询和改变本地目录:lpwd, lcd

  • 上传:put f:\hw.txt

  • 下载:get hw.txt

  • 运行本地命令:!+cmd_name,例如!dir显示本地文件,!type Readme.txt显示Readme.txt文件内容;

  • 上传/下载多个文件:mput/mget;

  • psftp.exe的自动执行脚本:psftp user@10.0.2.47 -bc -b myscript,(相对于putty的-m参数)

myscript文件内容是自动执行的指令,例如:

cd /home/ftp/users/jeff 
del jam-old.tar.gz 
ren jam.tar.gz jam-old.tar.gz 
put jam.tar.gz

详见putty文档6.2节;

设置Putty默认属性

在$PUTTY_HOME\sessions\下有一个%C4%AC%C8%CF%C9%E8%D6%C3文件, 其中C4AC C8CF C9E8 D6C3是“默认设置”的Unicode编码,这个文件里保存的是默认设置, 设置默认设置的好处是以后凡不指明都是用默认值(对于开关选项,0表示关闭,1表示开启):

Font\Lucida%20Console\ 
LineCodePage\UTF-8\ 
ScrollbackLines\20000\ ; 缓冲区行数 
Protocol\ssh\ ; 默认连接协议,可以不用-ssh参数特别说明 
TerminalType\xterm\

FullScreenOnAltEnter\1\ ; 按Alt+Enter进入全屏模式 
CloseOnExit\0\ ; 退出网元后不关闭窗口(改为1是关闭窗口) 
MouseIsXterm\0\ ; unix-style Copy/Paste: 左键选择,右键粘贴

使用方法

对于常用连接,可以写成一个bat脚本,用Executor做快捷键启动;对于临时连接, 可以手工敲开始处的ssh自动登录脚本连接。

putty无法自动登录问题

现象:telnet无法自动登录:putty -telnet user@10.0.2.34,然后手工输入密码。

解决方法:使用kitty_portable代替putty,它可以输入登录密码, 然后把自动登录服务器保存为一个session,例如名为mysession, 然后用kitty -load mysession启动之。

putty也有-load参数,但它的session信息是保存在注册表里,portable能力稍差。

参考:

  • Improving Putty settings on Windows

  • 精彩PuTTY 中文教程



Published

Dec 24, 2012

Last Updated

Dec 24, 2012

Category

Tech

Tags

  • ftp 7
  • putty 3
  • ssh 23
  • telnet 10

Contact

  • Powered by Pelican. Theme: Elegant by Talha Mansoor