先来一段简单的ftp 下载脚本

ftp -i -n<

open 14.2.33.211

user etl etl

cd /etlfile/ftpfile

lcd /etlfile/getfile

binary

prompt

mget *

prompt

close

bye

EOF

ftp安装部分,操作步骤如下:

可以使用yum命令直接安装ftp

# yum install vsftpd

ftp服务的开启与关闭命令:

开启:# service vsftpd start

关闭:# service vsftpd stop

安装成功后,可以在本地使用ftp软件连接,默认账号是虚拟机的账号和密码。

第一次安装,开启后请重启下ftp服务service vsftpd restart(若防火墙没关闭,请关闭防火墙)

有关FTP(客户端,服务器搭建这里不讲)有很多,大体分为命令行和GUI图形界面的软件。

1,图形界面的有

gftp

gnome下ftp客户端

crossftp

基于Java的稳定ftp客户端和同步工具。优良的中文/Unicode支持。

Kftpgrabber

KDE下ftp客户端,支持编码选择。对中文支持较好

filezilla

对中文支持好

krusader

也可以通过浏览器输入ftp://ip使用

如果有喜欢的可以通过apt-get 或者 aptitude 安装。

2,CLI(命令行)主要有ftp 和 lftp

(1)ftp

1. 连接ftp服务器

格式:ftp [hostname| ip-address]

a)在linux命令行下输入:ftp 10.18.34.115

b)服务器询问你用户名和口令,分别输入yint和相应密码,待认证通过即可。

或者用下面的格式

ftp - -i  -n  IP_ADDRESS

user USERNAME PASSWORD

比如:

ftp -i -n 172.17.17.17

user  PUB    123456

也可以自己写个脚本自动登录。

[email protected]:~/桌面/shell$ cat ftp.sh

#!/bin/sh

ftp -i -n  172.17.17.17

<< !

user  PUB    123456

!

这样就可以自动登录了。

2. 下载文件

下载文件通常用get和mget这两条命令。

a) get

格式:get [remote-file] [local-file]

将文件从远端主机中传送至本地主机中.

如要获取服务器上E:/rose/1.bmp,则

ftp> get /rose/1.bmp 1.bmp (回车)

b) mget

格式:mget [remote-files]

从远端主机接收一批文件至本地主机.

如要获取服务器上E:/rose/下的所有文件,则

ftp> cd /rose

ftp> mget *.* (回车)

注意:文件都下载到了linux主机的当前目录下。比如,在 /root/yint下运行的ftp命令,则文件都下载到了/root/yint下。

3.上传文件

a) put

格式:put local-file [remote-file]

将本地一个文件传送至远端主机中.

如要把本地的1.bmp传送到远端主机E:/rose,并改名为333.bmp

ftp> put 1.bmp /rose/333.bmp (回车)

b) mput

格式:mput local-files

将本地主机中一批文件传送至远端主机.

如要把本地当前目录下所有bmp文件上传到服务器E:/rose 下

ftp> cd /rose (回车)

ftp> mput *.bmp (回车)

注意:上传文件都来自于主机的当前目录下。比如,在 /root/yint下运行的ftp命令,则只有在/root/yint下的文件linux才会上传到服务器E:/rose 下。

4. 断开连接

bye:中断与服务器的连接。

ftp> bye (回车)

(2)lftp

在用lftp访问国内一些ftp服务器时,往往看到的中文是乱码,这是由于服务器和本地编码不一致造成的。

解决办法:

在主目录下新建一个文件~/.lftprc或者~/.lftp/rc

比如我在终端中输入:

gedit ~/.lftprc  #在当前目录下建立.lftprc文件

然后在弹出的对话框中输入以下内容:

debug 3

set ftp:charset GBK

set file:charset UTF-8

#set ftp:passtive-mode no

#alias utf8 " set ftp:charset UTF-8"

#alias gbk " set ftp:charset GBK"

上面的这几行的意思是

设置本地和ftp服务器的编码方式

alias 是使用别名命令

如果对于经常使用不同编码的 ftp server 的朋友,或经常使用不同的选项的,可以设置一些别名,这样会方便很多。

比如:

我经常访问 gbk 编码的 ftp, 还有 utf8 编码的,那么我在 ~/.lftp 中这样写

代码:

alias   gbk  set ftp:charset gbk; set file:charset UTF-8

alias   utf8 set ftp:charset UTF-8; set file:charset UTF-8

那么当我访问一个 utf8 站点的时候,如果发现乱码,只要在 lftp 的命令提示符号下面输入 utf8 就可以将编码调整正常。同理,如果访问 gbk 的发现乱码就输入 gbk, 马上正常。

下面讲解使用lftp

1、登录ftp

代码:

lftp 用户名:密码@ftp地址:传送端口(默认21)

也可以先不带用户名登录,然后在接口界面下用login命令来用指定账号登录,密码不显示。

口令:

然后就进入了。(这里输入的口令是密码,linux下密码不显示)

2、查看文件与改变目录

代码:

ls

cd 对应ftp目录

在lftp终端中,前面带一个l的命令例如lcd,指的是local,就是在本机的操作,而对应的没有这个l的,都是对ftp site的操作。还有就是要执行本地终端命令,也可以用前面带一个!的方式。这样,配合起来,终端,本地的操作都很放遍。

例如,查看ftp上所有的以mp3为扩展名的文件:

代码:

find . -name "*.mp3"

代码:

lcd 成功, 本地目录=/home/cyq

3、下载

get当然是可以的,还可以

代码:

mget -c *.pdf

把所有的pdf文件以允许断点续传的方式下载。m代表multi

代码:

mirror aaa/

将aaa目录整个的下载下来,子目录也会自动复制

代码:

pget -c -n 10 file.dat

以最多10个线程以允许断点续传的方式下载file.dat

可以通过设置pget:default-n的值而使用默认值。

4、上传

同样的put,mput,都是对文件的操作,和下载类似。

代码:

mirror -R 本地目录名

将本地目录以迭代(包括子目录)的方式反向上传到ftp site。

5、模式设置。

代码:

set ftp:charset gbk

远程ftp site用gbk编码,对应的要设置为utf8,只要替换gbk为utf8即可。

代码:

set file:charset utf8

本地的charset设定为utf8,如果你是gbk,相应改掉。

代码:

set ftp:passive-mode 1

使用被动模式登录,有些site要求必须用被动模式或者主动模式才可以登录,这个开关就是设置这个的。0代表不用被动模式。

6、书签

其实命令行也可以有书签,在lftp终端提示符下:

代码:

bookmark add ustc

就可以把当前正在浏览的ftp site用ustc作为标签储存起来。以后在shell终端下,直接

代码:

lftp ustc

就可以自动填好用户名,密码,进入对应的目录了。

代码:

bookmark edit

会调用编辑器手动修改书签。当然,也可以看到,这个书签其实就是个简单的文本文件。密码,用户名都可以看到。

7、配置文件

/etc/lftp.conf

一般,我会添加这几行:

引用:

set ftp:charset gbk

set file:charset utf8

set pget:default-n 5

这样,就不用每次进入都要打命令了。其他的set 可以自己tab然后help 来看。

下面是常用命令

ls

显示远端文件列表(ils 显示本地文件列表)。# l 的意思就是local ils比较特殊

cd

切换远端目录(lcd 切换本地目录)。

get

下载远端文件。

mget

下载远端文件(可以用通配符也就是 *)。

pget

使用多个线程来下载远端文件, 预设为五个。

mirror

下载/上传(mirror -R)/同步 整个目录。

put

上传文件。

mput

上传多个文件(支持通配符)。

mv

移动远端文件(远端文件改名)。

rm

删除远端文件。

参数-r,递归删除文件夹

mrm

删除多个远端文件(支持通配符)。

mkdir

建立远端目录。

rmdir

删除远端目录。

pwd

显示目前远端所在目录(lpwd 显示本地目录)。

du

计算远端目录的大小

set net:limit-rate 10000,10000

限制上传下载各为10KB/s

set ftp:charset gbk

设置远程ftp site用gbk编码

!

执行本地 shell的命令(由于lftp 没有 lls, 故可用 !ls 来替代)

lcd

切换本地目录

lpwd

显示本地目录

alias

定义别名

bookmark

设定书签。

exit

退出ftp

linux系统的ftp命令大全,linux系统ftp命令(示例代码)相关推荐

  1. 今天给大家分享电脑cmd命令大全,使用cmd命令可以高效的对电脑进行配置或者快速打开自己需要的服务,有需要的朋友赶紧收藏吧!

    今天给大家分享电脑cmd命令大全,使用cmd命令可以高效的对电脑进行配置或者快速打开自己需要的服务,有需要的朋友赶紧收藏吧! 功能说明 cmd命令 组策略 gpedit.msc 控制面板 contro ...

  2. linux系统信息 命令,Linux_Linux系统信息查看命令大全,系统    # uname -a # - phpStudy...

    Linux系统信息查看命令大全 系统 # uname -a # 查看内核/操作系统/CPU信息 # head -n 1 /etc/issue # 查看操作系统版本 # cat /proc/cpuinf ...

  3. linux下vi编辑器的命令大全,linux下VI编辑器命令大全(超级完整版)

    linux下VI编辑器命令大全(超级完整版) NOTICE:把这里提到的命令牢记心间,行走LINUX才能轻松自如! 这是基本功,练就此身本领后,方可学习上乘功夫 如若不按此步骤修练,结果会经脉尽断,真 ...

  4. linux ps命令大全,Linux ps命令例子汇总

    Linux ps命令主要用于查看系统运行的进程,确定进程运行的状态机是否占用过多资源等?下面学习啦小编通过实例来给大家详细介绍下Linux的ps命令,一起来了解下吧. Linux提供了当前进程的同时, ...

  5. linux网络方面命令大全,Linux下必须知道的11个网络命令

    这篇文章收集了久经考验靠谱的命令,也收集了几个比较新的命令.多数命令都可以在图形桌面执行,即使是没什么终端使用经验的Linux用户也会常常执行命令来使用ping或是其它的网络诊断工具. 1.curl ...

  6. android中终端命令大全,Android系统在超级终端下必会的命令大全(八)

    系统安全相关命令su1.作用su的作用是变更为其它使用者的身份,超级用户除外,需要键入该使用者的密码.2.格式su [选项]... [-] [USER [ARG]...] 3.主要参数-f,--fas ...

  7. 【转载】Linux常用命令大全之文件处理命令(一)

    文章目录 文件处理命令 命令格式与目录处理命令ls 目录处理命令 2.1 mkdir命令 2.2 cd命令 2.3 pwd命令 2.4 rmdir命令 2.5 cp命令 2.6 mv命令 2.7 rm ...

  8. Linux目录结构和常用命令大全(文件处理命令)

    前言:Hello! 我是@每天都要敲代码!目前在和比特蛋哥重温一下Linux基础:毕竟每个大佬讲的课都有一些不同:虽然蛋哥的课程很少,但是干货也挺多的,等跟着蛋哥学习完这些课,就再更新一些我以前所学的 ...

  9. linux中make命令大全,Linux中的命令 make -f 是什么意思

    二.Makefile的文件名 默认的情况下,make命令会在当前目录下按顺序找寻文件名为"GNUmakefile"."makef ile"."Make ...

最新文章

  1. 一键获取解锁码_Windows 骚操作:轻轻一按手机指纹解锁电脑!
  2. Leetcode4---求两个排序数组的中位数
  3. char与byte的区别
  4. 程序包org.springframework.stereotype不存在,解决办法
  5. OS- -文件系统(一)
  6. Linux下samba服务的错误处理
  7. podcast播客资源_为什么播客是我的新维基百科-完美的非正式学习资源
  8. 不规则图形数格子的方法_北师大版五年级数学上册数学6.1组合图形的面积微课堂、同步练习、图文解读...
  9. 煤改气加剧雾霾”“石油焦是祸首”等谣言,你中招了吗?
  10. 数据库中状态表的设计
  11. 【编译原理系列】语法分析与上下文无关文法
  12. 数据库表关系详解(一对多、一对一、多对多)
  13. HTML语言中表格怎么弄,html语言中table表格内怎么换行
  14. 吴恩达:告别,大数据
  15. 请求的操作需要提升 win10
  16. Parallels Desktop | 在 Mac 里装 Windows 的最佳工具。
  17. 你为什么错过优质信息?
  18. 多种方法解决多个div并排显示的问题
  19. RoNIN: Robust Neural Inertial Navigation预训练模型测试
  20. left + (right - left) / 2;

热门文章

  1. es6 babel转码器使用
  2. Sql 最简单的Sqlserver连接
  3. SQL Server 2016新特性:Live Query Statistics
  4. openssl pem 生成公钥和私钥及文件
  5. php 图片上传预览(转)
  6. CSS相邻兄弟选择器
  7. RDIFramework.NET ━ .NET快速信息化系统开发框架 V3.0 版本强势发布
  8. 走近OSSIM传感器(Sensor)插件
  9. NSFetchedResultsController和UITableView显示CoreData的数据时用relationship分组的方法
  10. 救援模式下解决boot.local修改后无法登陆系统