ftp创建文件命令
⑴ windows命令行怎么使用ftp
1、首先,同时按下快捷键 Win+R,调出运行窗口,然后在运行窗口中输入 FTP,回车。
⑵ 请列出FTP的常见命令
1、DOS方式下FTP的使用
可在Windows系统cmd命令提示符下,输入
C: >FTP 域名
USER NAME: 管理员帐号
PASSWORD: 口令
FTP>PUT
LOCAL FILE: filename
REMOTE FILE: filename
即可上传
下载时使用GET命令
2、FTP常用命令
Ftp命令的功能是在本地机和远程机之间传送文件。该命令的一般格式如下:
c:> ftp 主机名/IP
最常用的命令有:
ls 列出远程机的当前目录
cd 在远程机上改变工作目录
lcd 在本地机上改变工作目录
ascii 设置文件传输方式为ASCII模式
binary 设置文件传输方式为二进制模式
close 终止当前的ftp会话
hash 每次传输完数据缓冲区中的数据后就显示一个#号
get(mget) 从远程机传送指定文件到本地机
put(mput) 从本地机传送指定文件到远程机
open 连接远程ftp站点
quit 断开与远程机的连接并退出ftp
? 显示本地帮助信息
3.linux下FTP命令详解
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 是打开的。
⑶ 求cmd中FTP所有命令!
1、首先打开 cmd命令行。
⑷ 怎样在windows系统下使用ftp登陆linux创建文件
"景安网络-快云VPS"为您解答:
首先,你得配置好ftp帐号权限,比如有创建文件权限(详细设置可以网络搜“VPS教程”去“景安网络”支持的vps技术教程站看,里面有相关图文教程);
然后,用flashfxp等软件登录服务器,关闭selinux,被动模式连接。
或者你可以用CMD命令行形式登录:lftp 用户名:密码@ftp地址:传送端口(默认21)连接成功,再用创建文件命令touch(当然帐号必须有创建文件的权限)
⑸ 批处理通过ftp在服务器上新建文件夹和文件
批处理实现你要的功能需要两个文件
举例
第一个:
在c盘新建一个文本文件名为 1.txt,写入以下空行之间的内容
open 192.168.1.241
root
abcde
rmdir 1
mkdir 1
by
其中第一行open后面的地址为你的ftp服务器的ip
第二行为登录用户名,第三行为登录对应密码
第四行为要执行的命令,rmdir是删除名为1的目录
第五行为要执行的命令,mkdir是新建名为1的目录
第六行为退出ftp。
注意,你要执行什么命令,可以在密码之后,by之前任意添加行。
第二个文件为bat文件:
写入以下空行之间的内容
ftp -s:1.txt
执行该bat则自动登录到你指定的ftp服务器,创建目录,注意,rmdir是一个删除的范例,那句可以不要。
如果要新建文件,可在本地新建2.txt后,使用put的方式变通
在1.txt中密码后,by前加入
asc
put 2.txt
执行bat后就会在服务器上新建2.txt,asc为指定以文本方式传送文件,如果是2进制文件,请换成bin
⑹ java 实现ftp上传如何创建文件夹
这个功能我也刚写完,不过我也是得益于同行,现在我也把自己的分享给大家,希望能对大家有所帮助,因为自己的项目不涉及到创建文件夹,也仅作分享,不喜勿喷谢谢!
interface:
packagecom.sunline.bank.ftputil;
importjava.io.BufferedInputStream;
importjava.io.BufferedOutputStream;
importorg.apache.commons.net.ftp.FTPClient;
publicinterfaceIFtpUtils{
/**
*ftp登录
*@paramhostname主机名
*@paramport端口号
*@paramusername用户名
*@parampassword密码
*@return
*/
publicFTPClientloginFtp(Stringhostname,Integerport,Stringusername,Stringpassword);
/**
*上穿文件
*@paramhostname主机名
*@paramport端口号
*@paramusername用户名
*@parampassword密码
*@paramfpathftp路径
*@paramlocalpath本地路径
*@paramfileName文件名
*@return
*/
(Stringhostname,Integerport,Stringusername,Stringpassword,Stringfpath,Stringlocalpath,StringfileName);
/**
*批量下载文件
*@paramhostname
*@paramport
*@paramusername
*@parampassword
*@paramfpath
*@paramlocalpath
*@paramfileName源文件名
*@paramfilenames需要修改成的文件名
*@return
*/
publicbooleandownloadFileList(Stringhostname,Integerport,Stringusername,Stringpassword,Stringfpath,Stringlocalpath,StringfileName,Stringfilenames);
/**
*修改文件名
*@paramlocalpath
*@paramfileName源文件名
*@paramfilenames需要修改的文件名
*/
(Stringlocalpath,StringfileName,Stringfilenames);
/**
*关闭流连接、ftp连接
*@paramftpClient
*@parambufferRead
*@parambuffer
*/
publicvoidcloseFtpConnection(FTPClientftpClient,,BufferedInputStreambuffer);
}
impl:
packagecom.sunline.bank.ftputil;
importjava.io.BufferedInputStream;
importjava.io.BufferedOutputStream;
importjava.io.File;
importjava.io.FileInputStream;
importjava.io.FileOutputStream;
importjava.io.IOException;
importorg.apache.commons.net.ftp.FTPClient;
importorg.apache.commons.net.ftp.FTPFile;
importorg.apache.commons.net.ftp.FTPReply;
importcommon.Logger;
{
privatestaticLoggerlog=Logger.getLogger(FtpUtilsImpl.class);
FTPClientftpClient=null;
Integerreply=null;
@Override
publicFTPClientloginFtp(Stringhostname,Integerport,Stringusername,Stringpassword){
ftpClient=newFTPClient();
try{
ftpClient.connect(hostname,port);
ftpClient.login(username,password);
ftpClient.setControlEncoding("utf-8");
reply=ftpClient.getReplyCode();
ftpClient.setDataTimeout(60000);
ftpClient.setConnectTimeout(60000);
//设置文件类型为二进制(避免解压缩文件失败)
ftpClient.setFileType(FTPClient.BINARY_FILE_TYPE);
//开通数据端口传输数据,避免阻塞
ftpClient.enterLocalActiveMode();
if(!FTPReply.isPositiveCompletion(ftpClient.getReplyCode())){
log.error("连接FTP失败,用户名或密码错误");
}else{
log.info("FTP连接成功");
}
}catch(Exceptione){
if(!FTPReply.isPositiveCompletion(reply)){
try{
ftpClient.disconnect();
}catch(IOExceptione1){
log.error("登录FTP失败,请检查FTP相关配置信息是否正确",e1);
}
}
}
returnftpClient;
}
@Override
@SuppressWarnings("resource")
(Stringhostname,Integerport,Stringusername,Stringpassword,Stringfpath,Stringlocalpath,StringfileName){
booleanflag=false;
ftpClient=loginFtp(hostname,port,username,password);
BufferedInputStreambuffer=null;
try{
buffer=newBufferedInputStream(newFileInputStream(localpath+fileName));
ftpClient.changeWorkingDirectory(fpath);
fileName=newString(fileName.getBytes("utf-8"),ftpClient.DEFAULT_CONTROL_ENCODING);
if(!ftpClient.storeFile(fileName,buffer)){
log.error("上传失败");
returnflag;
}
buffer.close();
ftpClient.logout();
flag=true;
returnflag;
}catch(Exceptione){
e.printStackTrace();
}finally{
closeFtpConnection(ftpClient,null,buffer);
log.info("文件上传成功");
}
returnfalse;
}
@Override
publicbooleandownloadFileList(Stringhostname,Integerport,Stringusername,Stringpassword,Stringfpath,Stringlocalpath,StringfileName,Stringfilenames){
ftpClient=loginFtp(hostname,port,username,password);
booleanflag=false;
=null;
if(fpath.startsWith("/")&&fpath.endsWith("/")){
try{
//切换到当前目录
this.ftpClient.changeWorkingDirectory(fpath);
this.ftpClient.enterLocalActiveMode();
FTPFile[]ftpFiles=this.ftpClient.listFiles();
for(FTPFilefiles:ftpFiles){
if(files.isFile()){
System.out.println("=================="+files.getName());
FilelocalFile=newFile(localpath+"/"+files.getName());
bufferRead=newBufferedOutputStream(newFileOutputStream(localFile));
ftpClient.retrieveFile(files.getName(),bufferRead);
bufferRead.flush();
}
}
ftpClient.logout();
flag=true;
}catch(IOExceptione){
e.printStackTrace();
}finally{
closeFtpConnection(ftpClient,bufferRead,null);
log.info("文件下载成功");
}
}
modifiedLocalFileName(localpath,fileName,filenames);
returnflag;
}
@Override
(Stringlocalpath,StringfileName,Stringfilenames){
Filefile=newFile(localpath);
File[]fileList=file.listFiles();
if(file.exists()){
if(null==fileList||fileList.length==0){
log.error("文件夹是空的");
}else{
for(Filedata:fileList){
Stringorprefix=data.getName().substring(0,data.getName().lastIndexOf("."));
Stringprefix=fileName.substring(0,fileName.lastIndexOf("."));
System.out.println("index==="+orprefix+"prefix==="+prefix);
if(orprefix.contains(prefix)){
booleanf=data.renameTo(newFile(localpath+"/"+filenames));
System.out.println("f============="+f);
}else{
log.error("需要重命名的文件不存在,请检查。。。");
}
}
}
}
}
@Override
publicvoidcloseFtpConnection(FTPClientftpClient,,BufferedInputStreambuffer){
if(ftpClient.isConnected()){
try{
ftpClient.disconnect();
}catch(IOExceptione){
e.printStackTrace();
}
}
if(null!=bufferRead){
try{
bufferRead.close();
}catch(IOExceptione){
e.printStackTrace();
}
}
if(null!=buffer){
try{
buffer.close();
}catch(IOExceptione){
e.printStackTrace();
}
}
}
publicstaticvoidmain(String[]args)throwsIOException{
Stringhostname="xx.xxx.x.xxx";
Integerport=21;
Stringusername="edwftp";
Stringpassword="edwftp";
Stringfpath="/etl/etldata/back/";
StringlocalPath="C:/Users/Administrator/Desktop/ftp下载/";
StringfileName="test.txt";
Stringfilenames="ok.txt";
FtpUtilsImplftp=newFtpUtilsImpl();
/*ftp.modifiedLocalFileName(localPath,fileName,filenames);*/
ftp.downloadFileList(hostname,port,username,password,fpath,localPath,fileName,filenames);
/*ftp.uploadLocalFilesToFtp(hostname,port,username,password,fpath,localPath,fileName);*/
/*ftp.modifiedLocalFileName(localPath);*/
}
}
⑺ 如何在自己的电脑上建立FTP
、创建新的FTP站点执行[开始]→[程序]→[管理工具]→[Internet服务器管理器]命令,打开“Internet信息服务”对话框。用鼠标右键单击服务器节点,从弹出的快捷菜单中选择[新建]→[FTP站点]命令,打开“欢迎使用FTP站点创建向导”对话框,然后单击[下一步]按钮,弹出“FTP站点说明”对话框,在“说明”文本框中输入站点的说明文字,比如“FTP下载站点”,然后单击[下一步]按钮;打开“IP地址和端口设置”对话框,在“输入FTP站点使用的IP地址”下拉列表中选择或者直接输入IP地址,并设定TCP端口的值为“21”,单击[下一步]按钮继续;弹出“FTP站主目录”对话框,在“路径”文本框中输入主目录的路径,然后单击[下一步]按钮;打开“FTP站点访问权限”对话框,FTP站点只有两种访问权限:读取和写入。前者对应下载权限,后者对应上传权限,单击[下一步]继续在最后弹出的对话框中单击[完成]按钮,完成站点的创建。2、创建虚拟目录主目录是存储站点文件的主要位置,虚拟目录以在主目录中映射文件夹的形式存储数据,可以更好地拓展FTP服务器的存储能力。用鼠标右键单击要建立虚拟目录的FTP站点,在弹出菜单中选择[新建]→[虚拟目录]命令。打开虚拟目录创建向导并单击[下一步]按钮,在“虚拟目录别名”对话框中的“别名”文本栏中指定虚拟目录别名,比如“资料下载”在“FTP站点内容目录”对话框中单击[浏览]按钮设定虚拟目录所对应的实际路径在“访问权限”对话框中,设定虚拟目录允许的用户访问权限,可以选择“读取”或“写入”权限,并单击[下一步]按钮完成虚拟目录的设置。同样道理,我们还可以创建一个名为“资料上传”的虚拟目录。在IIS管理界面中,单击展开FTP站点,可以找到刚才新建的虚拟目录3、站点的维护与管理查看连接用户右键单击FTP站点,从弹出菜单中选择“属性”命令,打开“FTP站点”选项卡。在这里可以对站点说明、IP地址和TCP端口号等内容进行配置。同时,在“连接”中可以设定同时连接到该站点的最大并发连接数单击[当前用户]按钮,打开“FTP用户会话”对话框,在这里可以查看当前连接到FTP站点的用户列表,从列表中选择用户,单击[断开]断开当前用户的连接设定FTP站消息FTP站点消息分为三种:欢迎、退出、最大连接数。在“消息”选项卡可以分别设定,“欢迎消息”用于向每一个连接到当前站点的访问者介绍本站点的信息,“退出消息”用于在客户断开连接时发送给站点访问者的信息,“最大连接数消息”用于在系统同时连接数达到上限时,向请求连接站点的新访问者发出的提示消息,完成后单击[确定]按钮配置匿名登录右键单击FTP站点,从弹出菜单中选择“属性”命令,单击选择“安全账号”选项卡。在默认状态下,当前站点是允许匿名访问的。在这里如果选择“允许匿名连接”选项,那么FTP服务器将提供匿名登录服务。如果选择“只允许匿名登录”选项,则可以防止使用有管理权限的账号进行访问,即便是Administrator(管理员)账号也不能登录,从而可以加强FTP服务器的安全管理修改主目录文件夹选择“主目录”选项卡,在这里可以使用“主目录”属性表改变FTP站点的主目录并修改其属性。单击[浏览]按钮,改变FTP站点的主目录文件夹存储的位置。如果打算改变主目录读写权限改变,可以选择是否允许“读取”和“写入”权限。为了更加进一步保障服务器的安全,建议选择“日志访问”选项,这样就可以同步记录FTP站点上的操作,从而便于在服务器发生故障的时候,及时打开日志文件检查故障的发生情况安全访问单击选择“目录安全性”选项卡,在这里可以通过限制某些IP地址来控制访问FTP服务器的计算机。选择“授予访问”或“拒绝访问”选项,可以用来调整如何处理这些IP地址,单击[添加]按钮可以进行IP 地址的添加操作,从而可以控制来自安全的IP地址的访问4、访问FTP服务器下面来测试一下FTP服务器是否已经正常工作了。首先在f:\inetpub\ftproot文件夹中加入一个名为Pic.bmp的文件启动Cutftp,配置好FTP站点的属性,然后单击[Connect]按钮连接FTP站点弹出一个欢迎登录对话框,单击[OK]按钮结束,即可打开FTP主站点目录,此时即可实现上传与下载任务。
⑻ linux创建ftp服务器的基本命令
快速构建FTP服务器,FTP服务器实现的基本功能是,下面就分几个步骤来搭建一个可以实现功能的简易FTP服务器。
1.安装FTP服务器
如果在安装系统时没有选择安装FTP服务器,可以通过Red Hat中的“添加/删除应用程序”进行安装。具体方法是,选择“主选单”→“”→“添加/删除应用程序”,在弹出的界面中选中FTP服务器,单击“更新”即可。
如果无法确认是否安装了该软件,可以使用以下命令查看:
2.启动FTP服务器
套用Red Hat 9.0的预设范例直接启动VSFTP。
为vsftpd启动vsftpd: [确定]
3.在/var/ftp/pub目录下创建一个名为test.txt的文件
文件内容为“This is a test file”。
4.测试
使用FTP客户端登录到本地服务器,然后以匿名身份(anonymous)登录:
# ftp 127.0.0.1Connected to 127.0.0.1 (127.0.0.1).220 (vsFTPd 1.1.3)Name (127.0.0.1:root): anonymous331 Please specify the pass.Password:230 Login successful. Have fun.Remote system type is UNIX.Using binary mode to transfer files.
这样就成功地登录到FTP服务器。可以显示服务器目录列表如下:
ftp ls227 Entering Passive Mode (127,0,0,1,63,15)drwxr-xr-x 2 0 0 4096 Dec 04 01:35 pub226 y send OK.
切换到pub目录下,并显示目录内容,可以找到刚才创建的文件test.txt:
ftp cd pub250 Directory successfully changed.ftp ls227 Entering Passive Mode (127,0,0,1,232,34)150 Here comes the directory listing.-rw-r--r-- 1 0 0 21 Dec 04 01:35 test.txt226 Directory send OK.
下载test.txt文件:
ftp mget test.txtmget test.txt? y227 Entering Passive Mode (127,0,0,1,186,210)150 Opening BINARY mode data connection for test.txt (21 bytes).226 File send OK.21 bytes received in 0.0108 secs (1.9 Kbytes/sec)
查看本机目录内容,可以看到test.txt已成功下载到本机。
ftp !lsa EIO_Binders initrd mnt proc tftpboot ylg.txtbin etc lib mymnt root tmpboot home lost+found myshare sbin usrdev id_dsas.pub misc opt test.txt var
尝试上传名为ylg.txt的文件,可以看到请求被拒绝了。
ftp put ylg.txtlocal: ylg.txt remote: ylg.txt227 Entering Passive Mode (127,0,0,1,243,10)550 Permission dend.
退出登录:
由测试可以看出,已经可以下载文件,但不能上传文件(也不能在服务器上创建目录和文件)。实际上这是一个专门提供下载服务的匿名FTP服务器。
从上面的步骤可以看出,并不需要做什么配置就可以完成一个简易FTP服务器的架设。这是因为Red Hat已经配置好一个缺省的FTP服务器。不过在实际应用中,大部分情况下这个简易的服务器并不能满足需求。
进一步配置FTP
下面将创建一个能够满足常用需求的FTP服务器。实际应用中,FTP服务器一般要同时提供和功能。此外,出于安全考虑,还需要有用户身份验证、用户权限设置及空间管理等。下面就来搭建这样一个FTP服务器。
1.创建欢迎语
如果希望使用者在进入目录时,能够看到欢迎语或对本目录的介绍,可以通过以下方法来实现。
确定/etc/vsftpd/vsftpd.conf文件中dirmessage_enable=YES,默认情况下,Red Hat 9.0有此设置。接着,在目录中新增名为.message的文件。本例在/home/ylg目录下创建一个.message文件,其内容为“欢迎来到我的 FTP站点”。
2.更换FTP服务器的默认端口
将预设的21端口改为2121,这样做是基于安全的考虑。更改方法为,使用vi打开/etc/vsftpd/vsftpd.conf:#vi /etc/vsftpd/vsftpd.conf
在文件最后增加如下一行内容:
3.取消anonymous登录的功能
在vsftpd.conf文件中找到如下一行,并将其值改为“NO”:anonymous_enable=YES
4.设定使用者不得更改目录
这样做的目的也是基于安全性的考虑。一般情况下,使用者的预设目录为/home/username。若是不希望使用者在登录后能够切换至上一层目录/home,则可通过以下设置来实现。在/etc/vsftpd/vsftpd.conf文件中找到以下三行内容:
#chroot_list_enable=YES# (default follows)#chroot_list_file=/etc/vsftpd.chroot_list
将其改为:
chroot_list_enable=YES# (default follows)chroot_list_file=/etc/vsftpd/chroot_list
新增一个文件/etc/vsftpd/chroot_list,文件内容为两个用户名:
5.针对不同的使用者限制不同的速度
假设用户ylg所能使用的最高速度为500Kb/s,用户user1所能使用的最高速度为250Kb/s,可以通过以下方法设置。在/etc/vsftpd/vsftpd.conf文件尾部新增以下一行:
增加一个名为/etc/vsftpd/userconf的目录:
在/etc/vsftpd/userconf下新增一个名为ylg的文件,其内容如下所示:
local_max_rate=500000
在/etc/vsftpd/userconf目录下新增一个名为user1的文件,其内容如下所示:
local_max_rate=250000
VSFTP对于速度的限制范围大概在80%到120%之间,也就是限制最高速度为100Kb/s,但实际的速度可能在80Kb/s到120Kb/s之间。如果频宽不足,数值会低于此限制。6.对于每一个联机用户,都以独立的进程来运行。一般情况下,在启动VSFTP时,只会看到一个名为vsftpd的进程在运行。但若是读者希望每一个联机用户都能以独立的进程来呈现,则可通过在/etc/vsftpd/vsftpd.conf文件中增加以下一行来实现:
setproctitle_enable=YES
6.保存/etc/vsftpd/vsftpd.conf文件,然后重新启动vsftpd:
7.测试刚创建的FTP服务器
以缺省方式登录会被拒绝,因为此时的默认端口号已经更改为2121,所以登录时需指定端口。
此时也不能再使用匿名方式登录:
# ftp 127.0.0.1 2121Connected to 127.0.0.1 (127.0.0.1).220 (vsFTPd 1.1.3)Name (127.0.0.1:root): anonymous331 Please specify the pass.Password:530 Login incorrect.Login failed.
如果以用户ylg则可以成功登录(指定端口2121),并显示欢迎信息:
# ftp 127.0.0.1 2121Connected to 127.0.0.1 (127.0.0.1).220 (vsFTPd 1.1.3)Name (127.0.0.1:root): ylg331 Please specify the password.Password:230-欢迎来到我的FTP站点230 Login successful. Have fun.Remote system type is .Using binary mode to transfer files.
因为在设置中设定了不能切换目录,所以下列命令无法正确执行:
550 Failed to change y.
再来测试一下上传和。首先下载服务器目录中的test.txt文件:
ftp get test.txtlocal: test.txt remote: test.txt227 Entering Passive Mode (127,0,0,1,243,215)150 Opening BINARY mode data connection for test.txt (21 bytes).226 File send OK.21 bytes received in 0.00308 secs (6.7 Kbytes/sec)
可以通过!ls命令看到本机目录中已成功下载该文件。然后上传本机目录中的ylg.txt文件到服务器:
ftp put ylg.txtlocal: ylg.txt remote: ylg.txt227 Entering Passive Mode (127,0,0,1,133,248)150 Ok to send data.226 File receive OK.19 bytes sent in 0.0401 secs (0.46 Kbytes/sec)
用ls命令查看服务器目录,会发现该文件已成功上传。
为了测试不同连机用户使用的是不同进程,可以使用ps -ef指令
⑼ 请问在DOS下进入FTP,用什么命令可以在FTP里面新建文件夹(目录)啊
mkdir
dir-name:在远程主机中建一目录
如果你想学习使用进行后台FTP下载,那么就必须学习FTP指令。
FTP的命令行格式为:
ftp
-v
-d
-i
-n
-g
[主机名]
,
其中
-v
显示远程服务器的所有响应信息;
-n
限制ftp的自动登录,即不使用;.n
etrc文件;
-d
使用调试方式;
-g
取消全局文件名。
FTP使用的内部命令如下(中括号表示可选项):
1.![cmd[args>:在本地机中执行交互shell,exit回到ftp环境,如:!ls*.zip
2.$
macro-ame[args]:
执行宏定义macro-name。
3.account[password]:
提供登录远程系统成功后访问系统资源所需的补充口令。
4.append
local-file[remote-file]:将本地文件追加到远程系统主机,若未指定远程系统文件名,则使用本地文件名。
5.ascii:使用ascii类型传输方式。
6.bell:每个命令执行完毕后计算机响铃一次。
7.bin:使用二进制文件传输方式。
8.bye:退出ftp会话过程。
9.case:在使用mget时,将远程主机文件名中的大写转为小写字母。
10.cd
remote-dir:进入远程主机目录。
11.cp:进入远程主机目录的父目录。
12.chmod
mode
file-name:将远程主机文件file-name的存取方式设置为mode,如:chmod
777
a.out。
13.close:中断与远程服务器的ftp会话(与open对应)。
14.cr:使用asscii方式传输文件时,将回车换行转换为回行。
15.delete
remote-file:删除远程主机文件。
16.debug[debug-value]:设置调试方式,
显示发送至远程主机的每条命令,如:deb
up
3,若设为0,表示取消debug。
17.dir[remote-dir][local-file]:显示远程主机目录,并将结果存入本地文件
18.disconnection:同close。
19.form
format:将文件传输方式设置为format,缺省为file方式。
20.get
remote-file[local-file]:
将远程主机的文件remote-file传至本地硬盘的local-file。
21.glob:设置mdelete,mget,mput的文件名扩展,缺省时不扩展文件名,同命令行的-g参数。
22.hash:每传输1024字节,显示一个hash符号(#)。
23.help[cmd]:显示ftp内部命令cmd的帮助信息,如:help
get。
24.idle[seconds]:将远程服务器的休眠计时器设为[seconds]秒。
25.image:设置二进制传输方式(同binary)。
26.lcd[dir]:将本地工作目录切换至dir。
27.ls[remote-dir][local-file]:显示远程目录remote-dir,
并存入本地文件local-file。
28.macdef
macro-name:定义一个宏,遇到macdef下的空行时,宏定义结束。
29.mdelete[remote-file]:删除远程主机文件。
30.mdir
remote-files
local-file:与dir类似,但可指定多个远程文件,如
:mdir
*.o.*.zipoutfile
。
31.mget
remote-files:传输多个远程文件。
32.mkdir
dir-name:在远程主机中建一目录。
33.mls
remote-file
local-file:同nlist,但可指定多个文件名。
34.mode[modename]:将文件传输方式设置为modename,
缺省为stream方式。
35.modtime
file-name:显示远程主机文件的最后修改时间。
36.mput
local-file:将多个文件传输至远程主机。
37.newer
file-name
⑽ CMD里 FTP的命令都有什么
在cmd中ftp命令很多,常用的主要有:
1、 ftp 192.168.1.3 登陆ftp。
2、dir 显示远程主机目录。
3、cd remote-dir:进入远程主机目录。
4、help[cmd]:显示ftp内部命令cmd的帮助信息,如:help get。
5、get remote-file[local-file]: 将远程主机的文件remote-file传至本地硬盘的local-file(本地文件夹)。
6、put local-file[remote-file]:将本地文件local-file传送至远程主机。
(10)ftp创建文件命令扩展阅读:
FTP命令是Internet用户使用最频繁的命令之一,不论是在DOS还是UNIX操作系统下使用FTP,都会遇到大量的FTP内部命令。熟悉并灵活应用FTP的内部命令,可以大大方便使用者,并收到事半功倍之效。
FTP是用来在两台计算机之间传输文件,是Internet中应用非常广泛的服务之一。它可根据实际需要设置各用户的使用权限,同时还具有跨平台的特性,即在UNIX、Linux和Windows等操作系统中都可实现FTP客户端和服务器,相互之间可跨平台进行文件的传输。
因此,FTP服务是网络中经常采用的资源共享方式之一。FTP协议有PORT和PASV两种工作模式,即主动模式和被动模式。