Linux下的SSH及FTP

背景:Windows终端和Linux服务器之间可以使用winscp/putty等工具进行远程连接及文件传输,如果我们有多台服务器托管于IDC,位于一个局域网中,如果我们想要从一个服务器转大文件到另一个服务器,一个方案是:从一个服务器上把文件Download到Windows终端,然后再从Windows终端上传到另一个服务器。“大文件”+“细水管带宽”的情况下,这个方案很不靠谱。只能考虑Linux服务器之间的传输。

Linux服务器之间怎么传?
只用两个工具就行了:ssh代替putty;sftp代替winscp;

用ssh登录服务器的命令为:
    >ssh -l 用户 服务器地址 -p 端口
回车后,如果是第一次登录,会提示你一条认证信息,你键入yes即可,接着输入密码登录即可;

用sftp登录服务器的命令为:
>sftp -oPort=端口 用户@服务器地址
回车后,输入密码登录,然后会显示一个sftp>的环境,这个时候,键入help你会看到所有命令的帮助,常用命令:
put 本地文件名 [远程文件名] — 上传文件
get 远程文件名 [本地文件名]  — 下载文件
pwd — 远程当前目录
lpwd — 本地当前目录
cd [远程路径] — 更改远程当前目录
lcd [本地路径] –更改本地当前路径
ls [远程路径] –查看远程当前文件夹中的文件
lls [本地路径] –查看本地当前文件夹中的文件
mkdir [远程路径] –创建远程目录
lmkdir [本地路径]  –创建本地目录

使用配置文件*.properties注意事项

在项目中使用配置文件*.properties的几点注意事项:
properties是以key=value的形式保存,有时key中会包含一些特殊字符如:冒号、等号、空格、@
等,这时就需要经过特殊处理来使得应用正确加裁数据。
1.空格:使用\u0020来替换key中的空格。
2.冒号:使用反斜杠字符 \ 转义,即\:。
3.制表符:使用\u0009。
4.等号:使用\=。
5.换页符:使用\u000C。
6. @等:使用\@的形式

一个数据库密码中包含了@,未使用\转义,导致无法连接数据库,逼得我写死在applicationContext.xml文件中,因为这个问题郁闷了很久,特记录一下。