分类
有关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
也可以自己写个脚本自动登录。
cyq@cyq-desktop:~/桌面/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)
例如: $ lftp test:123456@172.17.17.17
也可以先不带用户名登录,然后在接口界面下用login命令来用指定账号登录,密码不显示。
lftp user@site:port
例如:$ lftp test@172.17.17.17
口令:
然后就进入了。(这里输入的口令是密码,linux下密码不显示)
2、查看文件与改变目录
代码:
ls
cd 对应ftp目录
在lftp终端中,前面带一个l的命令例如lcd,指的是local,就是在本机的操作,而对应的没有这个l的,都是对ftp site的操作。还有就是要执行本地终端命令,也可以用前面带一个!的方式。这样,配合起来,终端,本地的操作都很放遍。
例如,查看ftp上所有的以mp3为扩展名的文件:
代码:
find . -name "*.mp3"
代码:
lftp test@172.17.17.17:/> lcd
lcd 成功, 本地目录=/home/cyq
lftp test@172.17.17.17:/>
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命令使用相关文章请关注PHP中文网!

热AI工具

Undresser.AI Undress
人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover
用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool
免费脱衣服图片

Clothoff.io
AI脱衣机

AI Hentai Generator
免费生成ai无尽的。

热门文章

热工具

mPDF
mPDF是一个PHP库,可以从UTF-8编码的HTML生成PDF文件。原作者Ian Back编写mPDF以从他的网站上“即时”输出PDF文件,并处理不同的语言。与原始脚本如HTML2FPDF相比,它的速度较慢,并且在使用Unicode字体时生成的文件较大,但支持CSS样式等,并进行了大量增强。支持几乎所有语言,包括RTL(阿拉伯语和希伯来语)和CJK(中日韩)。支持嵌套的块级元素(如P、DIV),

SublimeText3 英文版
推荐:为Win版本,支持代码提示!

SublimeText3汉化版
中文版,非常好用

Dreamweaver Mac版
视觉化网页开发工具

VSCode Windows 64位 下载
微软推出的免费、功能强大的一款IDE编辑器