某linux系统中有test.cap, 现在, 我需要把它移动到PC上, 然后用wireshark进行分析。 怎么移动呢? 没有什么samba啊, 不支持ftp啊, 也不支持tftp啊。 用sftp吧。 在PC上开启sftp服务器(下载一个sftpserver.exe)即可。 让linux系统充当本地客户端, 让sftserver充当服务器。
前面的博文中, 我们已经学习了sftp服务器的搭建, 所以这里就不再赘述了, 定sftp服务器的用户名和密码分别为user和password. 下面, 我们来学习一下linux中常用的sftp命令, 当然, 需要linux支持sftp哈。
1. sftp user@ip
你要用sftp, 当然得登录到sftp服务器啊, 在linux的shell中执行上面的命令后, linux shell会提示用户输入密码, 我们就输入password吧。 这样就成功建立了sftp连接。
2. help
建立连接后, linux shell中的$编程了sftp>, 这也对。 现在执行以下help, 可以看看sftp支持哪些命令。
3. pwd和lpwd
pwd是看远端服务器的目录, 即sftp服务器默认的当前目录。 lpwd是看linux本地目录。
4. ls和lls
ls是看sftp服务器下当前目录下的东东, lls是看linux当前目录下的东东。
5. put a.txt
这个是把linux当前目录下的a.txt文件上传到sftp服务器的当前目录下。
因此,首先在远程主机上创建一个具有相同名称的目录,然后从本地主机上传它,-r参数允许拷贝子目录和子文件:
sftp> put -r Tecmint.com-articles
sftp> mkdir Tecmint.com-articles
sftp> put -r Tecmint.com-articles
6. get b.txt
这个是把sftp服务器当前目录下的b.txt文件下载到linux当前目录下。
7. !command
这个是指在linux上执行command这个命令, 比如!ls是列举linux当前目录下的东东, !rm a.txt是删除linux当前目录下的a.txt文件。
这个命令非常非常有用, 因为在sftp> 后输入命令, 默认值针对sftp服务器的, 所以执行rm a.txt删除的是sftp服务器上的a.txt文件, 而非本地的linux上的a.txt文件。
8. exit和quit
退出。
总之, 连接后, 有一个help命令, 足矣足矣。