在Linux中,推荐使用wput这个工具来实现FTP文件上传。wput是一个开源软件,能够以命令行的方式将文件上传到FTP服务器上。本文将介绍如何在Linux系统中安装和使用wput。
安装wput
1. 打开终端。
2. 使用以下命令来更新软件仓库:
“`
sudo apt-get update
“`
3. 然后,使用以下命令来安装wput:
“`
sudo apt-get install wput
“`
这个命令会自动从软件仓库下载并安装wput。
使用wput上传文件
有了wput,我们就可以使用命令行上传文件了。以下是一个示例:
“`
wput file.txt ftp://username:password@ftp.example.com/path/to/remote/directory
“`
其中,file.txt是要上传的本地文件名;ftp.example.com是FTP服务器的域名或者IP地址;username和password是FTP登录信息;/path/to/remote/directory是要上传到的远程目录。
如果你没有在命令行中输入密码的习惯,也可以使用以下命令:
“`
wput –password=PASSWORD file.txt ftp://username@ftp.example.com/path/to/remote/directory
“`
这个命令会提示你输入密码。
如果要上传整个目录,可以使用以下命令:
“`
wput -r localdir ftp://username:password@ftp.example.com/path/to/remote/directory
“`
这个命令会上传本地目录localdir中的所有文件和子目录到指定的远程目录。
如果想要把wput的输出写入到日志文件中,可以使用以下命令:
“`
wput –log=LOGFILE file.txt ftp://username:password@ftp.example.com/path/to/remote/directory
“`
这个命令会将wput的输出写入到LOGFILE文件中。
常用参数
wput有几个常用的参数,以下是一些示例:
– -v:显示上传进度;
– -nc:如果远程文件已经存在,则不覆盖;
– -u:只上传本地文件比远程文件新的文件;
– -t:上传过程中断后继续上传;
– -N:只上传本地文件名中标识的文件;
– -p:开启被动模式;
– -S:使用SSL连接;
– -d:开启调试模式。
结论
wput是一个方便实用的Linux命令行工具,可以帮助我们快速地上传文件到FTP服务器上。通过本文的介绍,您已经了解了如何安装和使用wput,希望这对您有所帮助。
相关问题拓展阅读:
- linux配置ftp服务器的过程
- Linux之ftp命令使用方法及案例
linux配置ftp服务器的过程
1.首先连接上自己的linux服务器。我的Linux是CentOS 6
2.检查Linux服务器上是否安装了vsftpd服务。
rpm -qa|grep vsftpd
可以使用rpm -e vsftpd-2.2.2-24.el6.x86_64进行卸载。(可忽略此步骤)
3.如果没嫌燃有安装,则进行安装
yum -y install vsftpd
4.安装完成后,修改vsftpd配置
vi /etc/vsftpd/vsftpd.conf
打开vsftpd.conf配置文件,按i进入编辑模式
将anonymous_enable=YES,修改为 anonymous_enable=NO
修改完成后,按Esc退出编辑模式,然后输入命令(:wq)进行保存退出。注意冒号为英文状态下。
5.重新启动 vsftpd服务
service vsftpd restart
6.为ftp创建用户
ftp用户名:testftp,密码testftp,并将用户绑定到 /var/ftp/testftp
useradd -d /var/ftp/testftp testftp
设置密码:
passwd testftp
输入密码,Linux下输入密码不显示
7.开启防火墙21端口
iptables -I INPUT -m state –state NEW -m tcp -p tcp –dport 21 -j ACCEPT
保存:service iptables save
重启:service iptables restart
8.在浏览器测试是否成功
在浏览器地址栏输入
输入用户名和密码就可以访问了。
9.权限设置
如果建新文件夹时出现 550 Create directory operation failed. (550报错)时,或码者厅者切换目录出错,应该是没有权限导致的!
vi /etc/selinux/config
打开配置将 SELINUX的值迟隐设为disabled
重启ftp服务
10.指定ftp家目录
修改ftp的根目录只要修改/etc/vsftpd/vsftpd.conf文件即可
vi /etc/vsftpd/vsftpd.conf
加入下面三行
local_root=/var/www/html
chroot_local_user=YES
anon_root=/var/www/html
local_root 针对系统用户;anon_root 针对匿名用户
chmod 755 /var/ftp/testftp
然后重启ftp服务就可以了
这时任何一个用户访问都会指定到 /var/ftp/testftp 下 即:ftp的根目录设置成了 /
FTP配置到此结束!!!
service vsftpd start 启动ftp命令
service vsftpd stop 停止ftp命令
service vsftpd restart 重启ftp命令
之一步:打开终端(快捷键是Ctrl+Alt+t),如果当前用户不是root用户,请输入命令“su”,然后输入root账户密码即可;
第二步:输入命令“apt-get update”,这一步是为了更新下载的数据源,如果不更新可能造成有几个后面的软件包无法下载;
第三步:输入命令“apt-get install vsftpd”完成安装vsftpd;
第四步:判断vsftp是否安装成功,输入命令“service vsftpd restart”重启vsftpd服务棚中,如果他在运行状态说明安装成功;
第五步:新建“/home/uftp”目录作为用户主目录,输入命令“mkdir /home/uftp”回车 ,然后输入命令“ls /home”查看home目录下有uftp这个目录吗,如果有就是创建成功;
第六步:新建用户uftp并且设置密码,输入命令“useradd -d /home/uftp -s /bin/bash uftp”
回车,然后再输入命令“passwd uftp”回车,然后输入两次密码就设置ok了
第七步:使用vi修改配置文件/etc/vsftpd.conf,输入命令“vi /etc/vsftpd.conf”回车,
向文件中添加“userlist_deny=NO””userlist_enable=YES”?, “userlist_file=/etc/allowed_users”?,
“seccomp_sandbox=NO”,最后把文件中的“local_enable=YES”保存(如果提示无法保存,直接退出来,把读写和执行权限给这个文件,具体操作为:顷和枯输入命令: “chmod 777 /etc/vsftpd.conf”回车就可以了);
第八步:新建文件/etc/allowed_users,输入命令“vi /etc/allowed_users”,打开后再这个文件内写入“uftp”保存即可;《Linux就该这么学》
第九步:查看/etc/ftpusers文件(不能访问ftp服务用户清单)的内容,输入命令“vi /etc/ftpusers”回车,如果里面有uftp,就把他删除;
第十步:安装winscp软雀洞件,进行远程登录访问;下载直接在百度下载就行
Linux之ftp命令使用方法及案例
Linux之ftp命令使用方法及案例
Example 1:登陆
# ftp 121.199.5.52
Connected to 121.199.5.52 (121.199.5.52).
220 Microsoft FTP Service
Name (121.199.5.52:root): baitongsj
331 User name okay, need password.
Password:
230 User logged in, proceed.
Remote system type is UNIX.
Using binary mode to transfer files.
ftp> ll
?Invalid command
ftp>
Example2:dir,cd ,quit 命令用法
ftp> dir ./app
227 Entering Passive Mode (121,199,5,52,128,234)
150 Opening ASCII mode data connection for /bin/ls.
total 0
drw-rw-rw- 1 user groupNov 9 18:26 .
drw-rw-rw- 1 user groupNov 9 18:26 ..
drw-rw-rw- 1 user groupNov 9 18:24 Common
drw-rw-rw- 1 user groupNov 9 18:24 Conf
drw-rw-rw- 1 user groupNov 9 18:19 Lang
drw-rw-rw- 1 user groupNov 9 18:23 Lib
drw-rw-rw- 1 user group 春扒Nov 9 18:26 Runtime
drw-rw-rw- 1 user groupNov 9 18:35 Tpl
226 Transfer complete.
ftp> cd base
250 Directory changed to /crms/Base
ftp> dir
227 Entering Passive Mode (121,199,5,52,128,235)
150 Opening ASCII mode data connection for /bin/ls.
drw-rw-rw- 扒纯昌 1 user groupNov 9 18:18 .
drw-rw-rw- 1 user 裤册 groupNov 9 18:18 ..
drw-rw-rw- 1 user groupNov 9 18:12 Common
drw-rw-rw- 1 user groupNov 9 18:13 Conf
drw-rw-rw- 1 user groupNov 9 18:17 Extend
-rw-rw-rw- 1 user groupJanLICENSE.txt
drw-rw-rw- 1 user groupNov 9 18:17 Lang
drw-rw-rw- 1 user groupNov 9 18:17 Lib
-rw-rw-rw- 1 user groupJanREADME.txt
-rw-rw-rw- 1 user groupJanThinkPHP.php
drw-rw-rw- 1 user groupNov 9 18:18 Tpl
-rw-rw-rw- 1 user groupJanlogo.png
226 Transfer complete.
ftp> quie
?Invalid command
ftp> quit
221 Goodbye!
#
example3:帮助文件
ftp> help
Commands may be abbreviated. Commands are:
! debugmdirsendportsite
$ dirmgetputsize
accountdisconnect mkdirpwdstatus
appendexitmlsquitstruct
asciiformmodequotesystem
bellgetmodtimerecvsunique
binaryglobmputregettenex
byehashnewerrstatustick
casehelpnmaprhelptrace
cdidlenlistrenametype
cdupimagentransresetuser
chmodlcdopenrestartumask
closelspromptrmdirverbose
crmacdefpassiverunique?
deletemdeleteproxysend
ftp> help dir
dirlist contents of remote directory
ftp> help mdir
mdirlist contents of multiple remote directories
ftp>
example4:重命名文件
ftp> dir
227 Entering Passive Mode (121,199,5,52,128,234)
150 Opening ASCII mode data connection for /bin/ls.
drw-rw-rw- 1 user groupNov 9 18:46 .
drw-rw-rw- 1 user groupNov 9 18:46 ..
drw-rw-rw- 1 user groupNov 9 18:39 Install
drw-rw-rw- 1 user groupNov 9 18:36 appImg
drw-rw-rw- 1 user groupNov 11 11:08 css
drw-rw-rw- 1 user groupNov 9 18:37 excelmodel
drw-rw-rw- 1 user groupNov 9 18:46 file
drw-rw-rw- 1 user groupNov 9 18:37 ico
drw-rw-rw- 1 user groupNov 9 18:38 img
drw-rw-rw- 1 user groupNov 11 11:11 js
-rw-rw-rw- 1 user groupOct 25 15:56 ni.txt
drw-rw-rw- 1 user groupNov 9 18:46 sound
drw-rw-rw- 1 user groupNov 9 18:46 sql
226 Transfer complete.
ftp> rename ni.txt ss
350 File or directory exists, ready for destination name
250 RNTO command successful.
ftp> dir
227 Entering Passive Mode (121,199,5,52,128,235)
150 Opening ASCII mode data connection for /bin/ls.
drw-rw-rw- 1 user groupNov 16 16:57 .
drw-rw-rw- 1 user groupNov 16 16:57 ..
drw-rw-rw- 1 user groupNov 9 18:39 Install
drw-rw-rw- 1 user groupNov 9 18:36 appImg
drw-rw-rw- 1 user groupNov 11 11:08 css
drw-rw-rw- 1 user groupNov 9 18:37 excelmodel
drw-rw-rw- 1 user groupNov 9 18:46 file
drw-rw-rw- 1 user groupNov 9 18:37 ico
drw-rw-rw- 1 user groupNov 9 18:38 img
drw-rw-rw- 1 user groupNov 11 11:11 js
drw-rw-rw- 1 user groupNov 9 18:46 sound
drw-rw-rw- 1 user groupNov 9 18:46 sql
-rw-rw-rw- 1 user groupOct 25 15:56 ss
226 Transfer complete.
example5 :格式 get ,将文件从远端主机中传送至本地主机中,如要获取服务器上\rose\1.bmp,则 ftp> get /rose/1.bmp /tmp/1.bmp (回车),必须给出第二个参数,否则会复制失败,登录后执行:
ftp> get robots.txt /tmp/
local: /tmp/ remote: robots.txt
227 Entering Passive Mode (121,199,5,52,128,233)
150 Opening BINARY mode data connection for robots.txt (26 Bytes).
local: /tmp/: Is a directory
226 Transfer complete.
226 ABOR command successful.
ftp>
example 6:lcd 命令
ftp> lcd ..
Local directory now /
ftp> lcd /tmp/flower
Local directory now /tmp/flower
example 7: put命令
格式:put local-file
将本地一个文件传送至远端主机中.
如要把本地的1.bmp传送到远端主机e:\rose,并改名为333.bmp
ftp> put 1.bmp /rose/333.bmp (回车)
ftp> put /tmp/tt.txt ./nihaol.txt
local: /tmp/tt.txt remote: ./nihaol.txt
227 Entering Passive Mode (121,199,5,52,128,232)
150 Opening BINARY mode data connection for nihaol.txt.
226 Transfer complete.
5 bytes sent in 2.6e-05 secs (192.31 Kbytes/sec)
example 8: mput命令
格式:mput local-files
将本地主机中一批文件传送至远端主机.
如要把本地当前目录下所有bmp文件上传到服务器e:\rose 下
ftp> cd /rose (回车)
ftp> mput *.bmp (回车)
关于linux wput ftp的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站。