工作期间,每次将文件上传至ftp服务器时,均需要手工输入ip、用户名、密码等,因此,考虑编写脚本完成文件的上传任务。具体的脚本sync.sh如下:
#!/bin/bash source ~/.bashrc
# 模拟进入ftp命令行模式,其中EOF表示退出标记符
ftp -niv <<- EOF # 根据ftp的ip地址与端口号,连接ftp服务器
open ip port # 输入用户名与密码
user userName password # 以bin模式进行传输,与ASCII模式有区别,使用bin模块能够防止乱码问题
bin # 上传文件
get $1 # 结束
bye
#退出
EOF
然后将该脚本sync.sh加入环境变量,每次只需执行 sync.sh filename即可,具体的执行过程如下:
Connected to *.*.*.*.
Microsoft FTP Service
Password required for userName.
User logged in.
Remote system type is Windows_NT.
Type set to I.
local: filename remote: filename
PORT command successful.
Data connection already open; Transfer starting.
Transfer complete.
bytes received in 44.62 secs (2453.3 kB/s)
Goodbye.