blog » Linux » Linux安全文件传输命令行工具sftp使用总结

Linux安全文件传输命令行工具sftp使用总结

用途说明
sftp命令可以通过ssh来上传和下载文件,是常用的文件传输工具,它的使用方式与ftp类似,但它使用ssh作为底层传输协议,所以安全性比ftp要好得多。

使用示例:
sftp username@hostname
登陆用户:username
登陆主机:hostname
登陆端口:默认端口,即22

如果需要使用其他端口登陆,可以通过参数-P来设置端口:

sftp -P port username@hostname

sftp连接成功之后常用操作命令如下:

help/? 打印帮助信息。
pwd 查看远程服务器当前目录;
lpwd 查看本地系统的当前目录。
cd [dir] 将远程服务器的当前目录更改为[dir];
lcd [dir] 将本地系统的当前目录更改为[dir]。
ls 显示远程服务器上当前目录的文件名;
ls -l 显示远程服务器上当前目录的文件详细列表;
ls [pattern] 显示远程服务器上符合指定模式[pattern]的文件名;
ls -l [pattern] 显示远程服务器上符合指定模式[pattern]的文件详细列表。
lls 显示本地系统上当前目录的文件名;
lls的其他参数与ls命令的类似。
get [file] 下载指定文件[file];
get [pattern] 下载符合指定模式[pattern]的文件。
put [file] 上传指定文件[file];
get [pattern] 上传符合指定模式[pattern]的文件。
progress 切换是否显示文件传输进度。
mkdir [dir] 在远程服务器上创建目录;
lmkdir [dir] 在本地系统上创建目录。
exit/quit/bye 退出sftp。

! 启动一个本地shell。
! [commandline] 执行本地命令行。

其他命令还有:chgrp, chmod, chown, ln, lumask, rename, rm, rmdir, symlink, version。

在远程服务器执行与在本地执行的对比:

1. pwd和lpwd
pwd是看远端服务器的目录, 即sftp服务器默认的当前目录。 lpwd是看linux本地目录。

2. ls和lls
ls是看sftp服务器下当前目录下的东东, lls是看linux当前目录下的东东。

3. put a.txt
这个是把linux当前目录下的a.txt文件上传到sftp服务器的当前目录下。

4. get b.txt
这个是把sftp服务器当前目录下的b.txt文件下载到linux当前目录下。

5. !command
这个是指在linux上执行command这个命令, 比如!ls是列举linux当前目录下的东东, !rm a.txt是删除linux当前目录下的a.txt文件。
这个命令非常非常有用, 因为在sftp> 后输入命令, 默认值针对sftp服务器的, 所以执行rm a.txt删除的是sftp服务器上的a.txt文件, 而非本地的linux上的a.txt文件。

This post has already been read 25 times!

Related posts

RSS 2.0 | leave a response | trackback

发表评论