Linux中的ftp命令怎么写,linux下使用ftp命令

有一台ftp服务器,需要从linux上传送文件过去,查询了下使用方法

安装ftp

yum -y instsall ftp

命令行使用

$ ftp

ftp>open 52.79.137.222 2121 #### IP port

Connected to 52.79.137.222 (52.79.137.222).

220 Welcome to blah FTP service.

Name (52.79.137.222:tgcbt): bgladmin

331 Please specify the password.

Password:

230 Login successful.

Remote system type is UNIX.

Using binary mode to transfer files.

提示输入账号密码

230 Login successful.为成功登陆

ftp>ls

227 Entering Passive Mode (172,26,4,10,39,92).

说明客户端使用的是被动模式(pasv方式),ls/dir等命令用不了,需要改为主动模式(port方式)

ftp>passive

Passive mode off.

被动模式关闭

再次

ftp>ls

200 PORT command successful. Consider using PASV.

150 Here comes the directory listing.

drwx------ 2 1005 1005 6 Jan 04 20:14 1G

drwx------ 2 1005 1005 6 Apr 29 09:21 20g

drwx------ 2 1005 1005 6 Jan 04 20:14 5G

drwx------ 2 1005 1005 6 Apr 29 12:32 ebao

226 Directory send OK.

常用命令::

ftp>mkdir ebao 创建目录

257 "/ebao" created

ftp>cd 切换目录

250 Directory successfully changed.

ftp> status 连接状态

ftp> close 关闭连接

221 Goodbye.

ftp> passive 模式切换

Passive mode off.

或者

Passive mode on.

ftp> exit 退出ftp

ftp> pwd               显示自己的所在位置

ftp> dir 查看目录

ftp>put 复制本地文件到远程

ftp> put /home/backup/ebaobak/ebao20190426.sql.zip ebao/ebao20190426.sql.zip

local: /home/backup/ebaobak/ebao20190426.sql.zip remote: ebao/ebao20190426.sql.zip

200 PORT command successful. Consider using PASV.

553 Could not create file.

复制失败,因为远程目录的问题

ftp> put /home/backup/ebaobak/ebao20190426.sql.zip /ebao/ebao20190426.sql.zip

local: /home/backup/ebaobak/ebao20190426.sql.zip remote: /ebao/ebao20190426.sql.zip

200 PORT command successful. Consider using PASV.

150 Ok to send data.

226 Transfer complete.

1588889981 bytes sent in 506 secs (3137.44 Kbytes/sec)

复制成功,远程目录写的绝对路径

ftp> cd ebao

ftp> put /data/tool/ebao-yhb/yhbao20190304154101.sql.zip ./yhbao20190304154101.sql.zip

local:/data/tool/ebao-yhb/yhbao20190304154101.sql.zip remote: ./yhbao20190304154101.sql.zip

200 PORT command successful. Consider using PASV.

150 Ok to send data.

226 Transfer complete.

65351760 bytes sent in 13.7 secs (4754.09 Kbytes/sec)

ftp> ls

200 PORT command successful. Consider using PASV.

150 Here comes the directory listing.

-rw------- 1 1005 1005 1588889981 Apr 29 13:10 ebao20190426.sql.zip

-rw------- 1 1005 1005 65351760 Apr 29 13:20 yhbao20190304154101.sql.zip

226 Directory send OK.

备注:

登陆进去后看不到远程服务器的根目录下的目录,报错200 port command successful. consider using pasv 425 failed to establish connection。网上查了下

有人说,客户端的ftp要设置成主动; 有人说,服务器端ftp配置要修改允许的端口号; 有人说是linux的防火墙~~~ ;有人说是Selinux在捣鬼...

后来关闭linux客户端的防火墙,再ftp>ls就能看到目录

状态码::

200 PORT command successful. Consider using PASV. 连接成功,模式为PASV

230 Login successful. 登陆成功

221 Goodbye. 关闭连接,退出登陆

425 Failed to establish connection. 无法建立连接

227 Entering Passive Mode (172,26,4,10,39,94). 模式为被动

150 Here comes the directory listing. 查看目录

226 Directory send OK. 传送成功

553 Could not create file. 不能创建文件

250 Directory successfully changed. 目录切换成功

550 Failed to change directory. 目录切换失败

331 Please specify the password. 输入密码

220 Welcome to blah FTP service. 登陆提示

421 Timeout. 超时

530 Login incorrect. 登陆失败,账号密码不正确

扩展::

FTP连接时出现“227 Entering Passive Mode”解决办法也很简单,只需要关闭客户端的PASV方式,强制其用PORT方式访问服务器即可

FTP服务的两种工作模式:

•port方式(主动模式), 连接过程:客户端向服务器的FTP端口(默认是21)发送连接请求,服务器接受连接,建立一条命令链路。当需要传送数据时, 客户端在命令链路上用PORT命令告诉服务器:“我打开了X端口,你过来连接我”。于是服务器从20端口向客户端的X端口发送连接请求,建立一条数据链路来传送数据。

•pasv方式 ( 被动模式 ), 连接过程:客户端向服务器的FTP端口(默认是21)发送连接请求,服务器接受连接,建立一条命令链路。当需要传送数据时, 服务器在命令链路上用PASV命令告诉客户端:“我打开了X端口,你过来连接我”。于是客户端向服务器的X端口发送连接请求,建立一条数据链 路来传送数据。

由于服务器上的FTP进行TCP/IP筛选,仅允许特定的端口可以被客户端连接,所以无法使用PASV方式。找到了原因,解决办法也很简单,只需要关闭客户端的PASV方式,强制其用PORT方式访问服务器即可。

客户端登录FTP服务器后,用passive命令关闭客户端的PASV方式,如下:

代码如下

复制代码代码如下:

ftp> passive

Passive mode off.

再次执行该命令就可以启用PASV模式。

###############################以下为转载#########################################

来源:CSDN

原文:https://blog.csdn.net/sinat_38163598/article/details/72812146

FTP> ! 从 ftp 子系统退出到外壳。

FTP> ? 显示 ftp 命令说明。? 与 help 相同。

格式:? [command]

说明:[command]指定需要帮助的命令名称。如果没有指定 command,ftp 将显示全部命令的列表。

FTP> append 使用当前文件类型设置将本地文件附加到远程计算机上的文件。

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

说明:local-file 指定要添加的本地文件。

remote-file 指定要添加 local-file 的远程计算机上的文件。如果省略了 remote-file,本地文件名将被用作远程文件名。

FTP> ascii 将文件传送类型设置为默认的 ASCII。

说明:FTP 支持两种文件传送类型,ASCII 码和二进制图像。在传送文本文件时应该使用ASCII。

FTP> bell 切换响铃以在每个文件传送命令完成后响铃。默认情况下,铃声是关闭的。

FTP> binary(或bi) 将文件传送类型设置为二进制。

FTP> bye(或by) 结束与远程计算机的 FTP 会话并退出 ftp。

FTP> cd 更改远程计算机上的工作目录。

格式:cd remote-directory

说明:remote-directory 指定要更改的远程计算机上的目录。

FTP> close 结束与远程服务器的 FTP 会话并返回命令解释程序。

FTP> debug 切换调试。当调试打开时,发送到远程计算机的每个命令都打印,前面是字符串“>”。默认情况下,调试是关闭的。

FTP> delete 删除远程计算机上的文件。

格式:delete remote-file

说明:remote-file 指定要删除的文件。

FTP> dir 显示远程目录文件和子目录列表。

格式:dir [remote-directory] [local-file]

说明:remote-directory 指定要查看其列表的目录。如果没有指定目录,将使用远程计算机中的当前工作目录。Local-file 指定要存储列表的本地文件。如果没有指定,输出将显示在屏幕上。

FTP> disconnect 从远程计算机断开,保留 ftp 提示。

FTP> get 使用当前文件转换类型将远程文件复制到本地计算机。

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

说明:remote-file 指定要复制的远程文件。

Local-file 指定要在本地计算机上使用的名称。如果没有指定,文件将命名为 remote-file。

FTP >glob 切换文件名组合。组合允许在内部文件或路径名中使用通配符(*和?)。默认情况下,组合是打开的。

FTP >hash 切换已传输的每个数据块的数字签名 (#) 打印。数据块的大小是2048 字节。默认情况下,散列符号打印是关闭的。

FTP >help 显示 ftp 命令说明。

格式:help [command]

说明:command 指定需要有关说明的命令的名称。如果没有指定 command,ftp 将显示全部命令的列表。

FTP >lcd 更改本地计算机上的工作目录。默认情况下,工作目录是启动 ftp 的目录。

格式:lcd [directory]

说明:directory 指定要更改的本地计算机上的目录。如果没有指定directory,将显示本地计算机中当前的工作目录。

FTP >literal 将参数逐字发送到远程 FTP 服务器。将返回单个的 FTP 回复代码。

格式:literal argument [ ...]

说明:argument 指定要发送到 FTP 服务器的参数。

FTP >ls 显示远程目录文件和子目录的缩写列表。

格式:ls [remote-directory] [local-file]

说明:remote-directory 指定要查看其列表的目录。如果没有指定目录,将使用远程计算机中的当前工作目录。 local-file 指定要存储列表的本地文件。如果没有指定,输出将显示在屏幕上。

FTP >mdelete 删除远程计算机上的文件。

格式:mdelete remote-files [ ...]

说明:remote-files 指定要删除的远程文件。

FTP >mdir 显示远程目录文件和子目录列表。可以使用 mdir 指定多个文件。

格式:mdir remote-files [ ...] local-file

说明:remote-files 指定要查看列表的目录。必须指定 remote-files。请键入 - 使用远程计算机上的当前工作目录。

local-file 指定要还原列表的本地文件。请键入- 在屏幕上显示列表。

FTP >mget 使用当前文件传送类型将远程文件复制到本地计算机。

格式:mget remote-files [ ...]

说明:remote-files 指定要复制到本地计算机的远程文件。

FTP >mkdir 创建远程目录。

格式:mkdir directory

说明:directory 指定新的远程目录的名称。

FTP >mls 显示远程目录文件和子目录的缩写列表。

格式:mls remote-files [ ...] local-file

说明:remote-files 指定要查看列表的文件。必须指定 remote-files;

请键入- 使用远程计算机上的当前工作目录。

local-file 指定要存储列表的本地文件。请键入 - 以在屏幕上显示列表。

FTP >mput 使用当前文件传送类型将本地文件复制到远程计算机上。

格式:mput local-files [ ...]

说明:local-files 指定要复制到远程计算机的本地文件

FTP >open 与指定的 FTP 服务器连接。

格式:open computer [port]

说明:computer 指定要连接的远程计算机。可以通过 IP 地址或计算机名称指定计算机(DNS或主机文件必须可用)。如果自动登录打开(默认),ftp 还将尝试自动将用户登录到 FTP 服务器port 指定用来联系 FTP 服务器的端口号。

FTP >prompt 切换提示。如果关闭提示时 mget 及 mput 传送所有文件,Ftp在多文件传送过程中将提示允许您有选择地检索或存储文件。默认情况下,提示是

打开的。

FTP >put 使用当前文件传送类型将本地文件复制到远程计算机上。

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

说明:local-file 指定要复制的本地文件。

remote-file 指定要在远程计算机上使用的名称。如果没有指定,文件将命名为 local-file。

FTP >pwd 显示远程计算机上的当前目录。

FTP >quit 结束与远程计算机的 FTP 会话并退出 ftp。

FTP >quote 将参数逐字发送到远程 FTP 服务器。将返回单个的 FTP 回复代码。

Quote 与 literal 相同。

格式:quote argument [ ...]

说明:argument 指定要发送到 FTP 服务器的参数。

FTP >recv 使用当前文件传送类型将远程文件复制到本地计算机。Recv 与 get相同。

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

说明:remote-file 指定要复制的远程文件。

local-file 指定要在本地计算机上使用的名称。如果没有指定,文件将命名为 remote-file。

FTP >remotehelp 显示远程命令帮助。

格式:remotehelp [command]

说明:command 指定需要帮助的命令的名称。如果没有指定 command,ftp将显示全部远程命令的列表。

FTP >rename 重命名远程文件。

格式:rename filename newfilename

说明:filename 指定要重命名的文件。 newfilename 指定新的文件名。

FTP >rmdir 删除远程目录。

格式:rmdir directory

说明:directory 指定要删除的远程目录的名称。

FTP >send 使用当前文件传送类型将本地文件复制到远程计算机上。Send 与put 相同。

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

说明:local-file 指定要复制的本地文件。 remote-file 指定要在远程计算机上使用的名称。如果没有指定,文件将命名为 local-file。

FTP >status 显示 FTP 连接和切换的当前状态。

FTP >trace 切换数据包跟踪。Trace 在运行 ftp 命令时显示每个数据包的路由。

FTP >type 设置或显示文件传送类型。

格式:type [type-name]

说明:type-name 指定文件传送类型。默认设置为 ascii。如果没有指定type-name,将显示当前的类型。

FTP >user 指定远程计算机的用户。

格式:user username [password] [account]

说明:user-name 指定登录到远程计算机所使用的用户名。password 指定 user-name 的密码。如果没有指定,但必须指定,ftp 会提示输入密码。

account 指定登录到远程计算机所使用的帐户。如果没有指定account,但是需要指定,ftp 会提示您输入帐户。

FTP >verbose 切换 verbose 模式。

如果打开,将显示所有 ftp 响应。在文件传送完成后,将同时显示与传送效率有关的统计信息。默认情况下,verbose 是打开的。

sftp 是一个交互式文件传输程式。它类似于 ftp, 但它进行加密传输,比FTP有更高的安全性。下边就简单介绍一下如何远程连接主机,进行文件的上传和下载,以及一些相关操作。

举例,如远程主机的 IP 是 202.206.64.33或者是域名www.hebust.edu.cn,用户名是  fyt ,在命令行模式下:sftp fyt@202.206.64.33或者  fyt@www.hebust.edu.cn。回车提示输入密码。进入提示符

sftp>

如果登陆远程机器不是为了上传下载文件,而是要修改远程主机上的某些文件。可以

ssh  fyt@202.206.64.33 (其实sftp就是ssh 的一个程式。)

sftp> get /var/www/fuyatao/index.php  /home/fuyatao/

这条语句将从远程主机的  /var/www/fuyatao/目录下将 index.php 下载到本地  /home/fuyatao/目录下。

sftp> put /home/fuyatao/downloads/Linuxgl.pdf /var/www/fuyatao/

这条语句将把本地 /home/fuyatao/downloads/目录下的 linuxgl.pdf文件上传至远程主机/var/www/fuyatao/ 目录下。

你如果不知道远程主机的目录是什么样, pwd命令可以帮您查询远程主机的当前路径。查询本机当前工作目录 lpwd.

改变路径可以用cd ,改变本机路径可以用 lcd;

ls rm rmdir mkdir 这些命令都可以使用。同理调用本机都是加 l , 即 lls lrm.

要离开sftp,用exit 或quit、 bye 均可。详细情况可以查阅 man  sftp.

如果觉得在命令行模式下不太方便,可以 sudo apt-get install gftp。在图形界面下操作就简便多了

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值