美文网首页
linux使用命令行操作ftp

linux使用命令行操作ftp

作者: 雨而已 | 来源:发表于2017-06-05 16:57 被阅读835次

由于公司软件比较特殊,我们发布版本通常会给很多服务器都一并发布了,而且用的还是ftp,如果每个服务器都先打开ftp软件,连接上,然后再上传,这样无疑不符合我们程序员懒的特质。

于是我就花时间写了一个这样的脚本用来批量上传文件,我在这里会使用到lftp这个软件,这个软件比系统自带的ftp命令强大多了,而且ftp命令是不支持覆盖现有的目录的,所以还在苦苦寻找使用ftp覆盖目录的童鞋可以不用再继续了,下面就是简单介绍一下lftp的基本操作。

lftp的操作基本和ftp命令大同小异,首先打开ftp连接:lftp username:password@ip,打开链接后,你需要使用cd命令进入到你需要上传的目录,然后通过lcd命令进入到本地的目录,这时你就可以通过putmputmirror等命令上传文件,或通过getmget等命令下载文件,最后可以通过exit退出ftp。

lftp主要命令

命令 作用
help 产看命令列表
ls 显示远端文件列表
cd 切换远端目录
get 下载远程文件(单文件)
mget 下载远程文件(多文件)
pget 使用多个线程来下载远端文件
mirror 同步目录,可以用于下载和上传(- R)目录
put 上传文件(单文件)
mput 上传文件(多文件)
mv 移动文件(可以重命名目录、文件)
rm 删除远端文件
mrm 删除多个文件,可以使用通配符
mkdir 创建目录
rmdir 删除目录
pwd 显示远端的当前目录
lcd 切换本地目录
lpwd 显示本地目录
exit 退出ftp

示例:

# 连接数据库
lftp username:password@127.0.0.1

# 列出当前ftp目录的文件
lftp username@127.0.0.1:~> ls

# 进入ftp上的某个目录
lftp username@127.0.0.1:~> cd testDir

# 定位到本地目录
lftp username@127.0.0.1:~> lcd /local/testDir

# 上传单个文件
lftp username@127.0.0.1:~> put testFile

# 上传多个文件,可以使用通配符
lftp username@127.0.0.1:~> mput *.md

# 将本地的目录同步到ftp上
lftp username@127.0.0.1:~> mirror -R . 

# 获取远程的文件
lftp username@127.0.0.1:~> get testFile

# 获取远程的多个文件
lftp username@127.0.0.1:~> mget testFile

# 将远程的目录同步到本地
lftp username@127.0.0.1:~> mirror . 

# 退出ftp
lftp username@127.0.0.1:~> exit

ftp上传脚本:

#!/bin/bash

pathStr=`pwd`

# 将脚本所在的目录的所有文件都上传到ftp上
# 参数为ftp连接信息 username:password@ip
lftp $1 <<EOF
lcd $pathStr
mirror -R -c .
rm ftp.sh
exit;
EOF

只要将上面脚本的mirror -R -c .改为mirror -c .就可以变成一个备份脚本

如果想要了解lftp的更多细节,可以访问他们的官网

相关文章

  • linux使用命令行操作ftp

    由于公司软件比较特殊,我们发布版本通常会给很多服务器都一并发布了,而且用的还是ftp,如果每个服务器都先打开ftp...

  • 操作系统初识

    [toc] 操作系统 熟练使用 Linux 命令行 -> 使用 Linux 进行程序设计 -> 了解 Linux ...

  • Linux基本命令:文件处理命令之ls

    Linux是一个基于命令行的操作系统,很多操作都需要通过命令行进行。所以,了解命令是使用Linux操作系统的...

  • 图片转换为字符串

    1.在kali的环境下操作. Linux 命令行操作. Python 基础. pillow 库的使用 linux安...

  • docker学习2,docker基本命令

    操作docker容器,和操作linux差不多,都是使用命令行操作。不同的是,操作docker需要使用docker的...

  • Android版本控制之git

    前言 git是Linux之父开发的,我们应该使用命令行操作,熟练后再使用图形化操作 打开命令行:右键 git bu...

  • linux下ftp相关操作命令

    1. 连接ftp服务器 格式:ftp [hostname| ip-address]a)在linux命令行下输入:f...

  • Linux 命令行基本操作

    学习目标:掌握Linux 命令行基本操作! 想要学好,就得学会使用纯的命令行,很多软件都是命令行操作; 先了解一下...

  • 2019-05-06每周学习笔记

    vim 学习 近期开始频繁使用 Linux 操作系统,学会在 shell 上使用命令行进行操作,并使用 vi 或 ...

  • 20190428每周学习

    vim 学习 近期开始频繁使用 Linux 操作系统,学会在 shell 上使用命令行进行操作,并使用 vi 或 ...

网友评论

      本文标题:linux使用命令行操作ftp

      本文链接:https://www.haomeiwen.com/subject/eptwfxtx.html