正文:
案例一:显示 sftp 命令在执行过程中的详细步骤
# sftp -v 192.168.0.1
(补充:这里以使用 sftp 命令连接 IP 地址 192.168.0.1 为例)
案例二:非交互式将远处的文件拷贝到本地
# sftp eternalcenter@192.168.0.1:/tmp/test.txt
(补充:这里以通过用户 eternalcenter 登录,直接将 IP 地址 192.168.0.1 的文件 /tmp/test.txt 拷贝到本地的当前目录为例)
案例三:非交互式将本地的文件拷贝到远处
# sftp eternalcenter@192.168.0.1:/tmp/ <<< $"put test.txt"
或者:
# a=test;sftp eternalcenter@192.168.0.1:/tmp/ <<< $"put $a.txt"
(补充:这里以通过用户 eternalcenter 登录,直接将本地当前目录的 test.txt 文件拷贝到 IP 地址 192.168.0.1 的 /tmp/ 目录为例)
案例四:通过代理连接
# sftp -v -o ProxyCommand='ncat --proxy 10.0.0.1:10000 --proxy-type http 192.168.0.1 22' eternalcenter@192.168.0.1:/tmp/test.txt
(
补充:这里以
1) 通过代理 IP 地址 10.0.0.1 的 10000 端口,代理协议是 http,连接远程 IP 地址 192.168.0.1 的 22 端口
2) 通过用户 eternalcenter 登录
3) 直接将 IP 地址 192.168.0.1 的文件 /tmp/test.txt 拷贝到本地的当前目录
为例
)
参考文献:
https://www.endpointdev.com/blog/2013/04/socat-and-netcat-proxycommand-ssh
https://www.man7.org/linux/man-pages/man1/ncat.1.html