ftp自动下载目录
代码如下:
@echo off&setlocal enabledelayedexpansion
rem 变量o存的是你1.txt的完整路径
set /p o=1.txt
set /p s=2.txt
set /p ext=保存名称为(包括拓展名):
set i=F:\ftp下载%ext%
echo 192.168.1.103> ftp.txt
echo 12345>>ftp.txt
echo binary>>ftp.txt
echo get "%o%" "%i%">>ftp.txt
echo bye>>ftp.txt
ftp -s:"ftp.txt" 192.168.1.103
del ftp.txt
以前写的,你测试下。
⑵ 批处理来完成FTP文件自动下载
前几天笔者遇到一个需求,在windows平台下使用ftp来远程获取交换机扮毕漏的配置文件。鉴于每一次都需要在命令行里面手动输入,过程繁琐,于是想着使用脚本来完成这个重复性的工作,实现自动化。python的ftplib库也可以解决这个问题,但是笔者未来和其他bat脚本揉在一起,直接windows平台下使用批处理bat来完成。
ftp -s可以指定包含ftp命令的文本文件,ftp启动后这些命令将自动运行。
主批处理文件:ftp_main.bat
ftp命令批处理文件:ftp_task.bat,文件放置于D盘下。
除了FTP之外,date修数敏改电脑日期,time修改电脑厅烂时间,echo ^G测试电脑声音。注意,“^G”是在命令行中使用ctrl + g输入的,可以使用echo ^G > test.txt来获取这个字符。
最后这个脚本东凑西凑,界面如下:
⑶ 用ftp命令下载的文件默认放在哪
楼主您好,ftp下载的文件默认的路径是您用ftp用户登录之后所在的目录,您可以在用ftp连接上服务器之后,使用pwd查看路径。
⑷ ftp下载的文件在哪里
一般是在
c:\documents
and
settings\administrator\my
documents
你也可以
用ftp的命令
dir
列出目录
然后
对该文件目录
进行分析
找出
ftp
b1.gd.cn
user:
password:
get
test.rar
c:\
bye
这样
就可以把
下载的文件到
c盘了。
⑸ FTP命令mget如何下载整个目录下的文件及子目录文件
引用1个解答
ftp只是个小命令,特别多功能做不到的,可以利用其他ftp客户端软件
或把文件夹压缩后用命令行上传
以下是调出使用winrar压缩的命令
path
c:\program
files\winrar;d:\program
files\winrar;%path%
rar
a
d:\aa.rar
d:\aa
之后在ftp的命令行里用
put
d:\aa.rar
⑹ 请教高手,用批处理命令FTP自动下载文件。
① 如果我理解没错,远端目录,最深层的那个子目录(名称是日期)的那个,每天都是变的;你要下载的是里面的文件(不含子目录);文件下载到本地E:dzyl下,而且目录也是按服务器上的日期创建。
② 批处理固定每天运行,从服务器前一天的目录下载文件。
如果理解正确,那么下面的代码可以实现(已测试过),ip地址你需要修改!你的操作系统如果是英文,也需呀修改(具体看脚本中的提示)
@echooff&
set"ftp_site=19.6.5.34"
set"ftp_id=pracq"
set"ftp_pwd=123456"
set"ftp_remote_dir=/ftp/bos/at/pracq/"
set"ftp_local_dir=E:dzyl"
:100
set"ftpcmd={{%random%}}.ftp"
ifexist%ftpcmd%goto100
::英文系统用下面这个,把下面一行中的::去除
::set"today=%date:~6,4%%date:~0,2%%date:~3,2%"
::中文系统用下面这个,如果是英文,在下面一行句首添加::
set"today=%date:~0,4%%date:~5,2%%date:~8,2%"
settoday=!today:~0,4!-!today:~4,2!-!today:~-2!
call:Date2Day!today!1Yesterday
setftp_remote_dir=!ftp_remote_dir!!yesterday!
>%ftpcmd%echoopen!ftp_site!
>>%ftpcmd%echo!ftp_id!
>>%ftpcmd%echo!ftp_pwd!
>>%ftpcmd%echocd!ftp_remote_dir!
>>%ftpcmd%echobye
for/f%%iin('ftp-s:%ftpcmd%')doif{%%i}=={550}(
!
gotoend
)
setftp_local_dir=!ftp_local_dir!!yesterday!
md!ftp_local_dir!1>nul2>&1
ifnotexist!ftp_local_dir!(
!
gotoend
)
>%ftpcmd%echoopen!ftp_site!
>>%ftpcmd%echo!ftp_id!
>>%ftpcmd%echo!ftp_pwd!
>>%ftpcmd%echocd!ftp_remote_dir!
>>%ftpcmd%echolcd!ftp_local_dir!
>>%ftpcmd%echobinary
>>%ftpcmd%echopromptn
>>%ftpcmd%echomget*.*
>>%ftpcmd%echobye
set/acount=0
for/f%%iin('ftp-s:%ftpcmd%')do(
if{%%i}=={226}set/acount=!count%+1
)
if!count!gtr0(
echoDone.!count!file^(s^)downloaded.
)else(
echoNofilehasbeendownloaded.
)
gotoend
:Date2Day
::call:Date2Day2007-11-122Day
@echooff&setlocal
for/f"tokens=1-3delims=/-:,"%%ain('echo/%~1')do(
set/ayy=%%a,mm=100%%b%%100,dd=100%%c%%100
)
set/az=14-mm,z/=12,y=yy+4800-z,m=mm+12*z-3,j=153*m+2
set/aj=j/5+dd+y*365+y/4-y/100+y/400-2472633
set/ai=j-%~2,a=i+2472632,b=4*a+3,b/=146097,c=-b*146097,c/=4,c+=a
set/ad=4*c+3,d/=1461,e=-1461*d,e/=4,e+=c,m=5*e+2,m/=153,dd=153*m+2,dd/=5
set/add=-dd+e+1,mm=-m/10,mm*=12,mm+=m+3,yy=b*100+d-4800+m/10
(if%mm%LSS10setmm=0%mm%)&(if%dd%LSS10setdd=0%dd%)
endlocal&set%~3=%yy%%f%%mm%%f%%dd%&
goto:eof
:end
ifexist%ftpcmd%(typenul>%ftpcmd%&&del/f/q%ftpcmd%1>nul2>&1)
endlocal&@echoon
测试运行结果:
Done.5file(s)downloaded.
⑺ ftp下载文件夹命令
最好使用flashfxp来管理ftp,简单好用,速度比web的快的多
用web的话,只需要在地址栏输入ftp://你的域名,打开之后输入帐号和密码然后选择你要下载的文件右键复制,然后在本地粘贴即可。
⑻ ftp上传下载目录的命令是什么
f t p 命 令 大 全
-------------------------------------------------------------
FTP命令是Internet用户使用最频繁的命令之一,不论是在DOS还是UNIX操作
系统下使用FTP,都会遇到大量的FTP内部命令,熟悉并灵活应用FTP的内部命令,可
以大大方便使用者,对于现在拨号上网的用户,如果ISP提供了shell可以使用noh
up,那么ftp将是你最省钱的上download方式,
ftp的命令行格式为:ftp -v -d -i -n -g[主机名]
-v 显示远程服务器的所有响应信息。
-d 使用调试方式。
-n 限制ftp的自动登录,即不使用.netrc文件。
-g 取消全局文件名。
ftp使用的内部命令如下(其中括号表示可选项):
1.![cmd[args]在本地机中执行交互shell、exit回到ftp环境,如!ls*.zip 。
2.¥ macro-ame[args]执行宏定义macro-name。
3.account[password]提供登录远程系统成功后访问系统资源所需的补充口令 。
4.appendlocal-file[remote-file]将本地文件追加到远程系统主机,若未指定远程系统文件名,则使用本地文件名。
5.ascii 使用ascii类型传输方式。
6.bell每个命令执行完毕后计算机响铃一次。
7.bin使用二进制文件传输方式。
8.bye退出ftp会话过程。
9.case在使用mget时,将远程主机文件名中的大写转为小写字母。
10.cd remote-dir 进入远程主机目录。
11.cp进入远程主机目录的父目录。
12.chmod modefile-name将远程主机文件file-name的存取方式设置为mode,如chmod 777 a.out。
13.close中断与远程服务器的ftp会话(与open对应)。
14.cr使用asscii方式传输文件时,将回车换行转换为回行。
15.delete remote-file删除远程主机文件。
16.debug[debug-value]设置调试方式,显示发送至远程主机的每条命令,如debup3,若 设为0,表示取消debug。
17.dir[remote-dir][local-file]显示远程主机目录,并将结果存入local-file。
18.disconnection同close。
19.form format将文件传输方式设置为format,缺省为file方式。
20.getremote-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[mode-name]将文件传输方式设置为mode-name,缺省为stream方式。
35.modtime file-name显示远程主机文件的最后修改时间。
36.mput local-file将多个文件传输至远程主机。
37.newerfile-name如果远程机中file-name的修改时间比本地硬盘同名文件的时间更近,则重传该文件。
38.nlist[remote-dir][local-file]显示远程主机目录的文件清单,并存入本地硬盘的local-file。
39.nmap[inpatternoutpattern]设置文件名映射机制,使得文件传输时,文件中的某些字符相互转换,
如nmap¥1.¥2.¥3[¥1,¥2].[¥2,¥3],则传输文件a1 .a2.a3时,文件名变为a1、a2,
该命令特别适用于远程主机为非U-NIX机的情况。
40.ntrans[inchars[outchars]设置文件名字符的翻译机制,如ntrans1R,则文件名LL L将变为RRR。
41.open host[port]建立指定ftp服务器连接,可指定连接端口。
42.passive进入被动传输方式。
43.prompt设置多个文件传输时的交互提示。
44.proxyftp-cmd在次要控制连接中,执行一条ftp命令,该命令允许连接两个ftp服务器,以在两个服务器间传输文件。
第一条ftp命令必须为open,以首先建立两个服务器间的连接。
45.put local-file[remote-file]将本地文件local-file传送至远程主机。
46.pwd显示远程主机的当前工作目录。
47.quit同bye,退出ftp会话。
48.quote arg1,arg2……将参数逐字发至远程ftp服务器,如quote syst。
49.recv remote-file[local-file]同get。
50.regetremote-file[local-file]类似于get,但若local-file存在,则从上次传输中断处续传。
51.rhelp[cmd-name]请求获得远程主机的帮助。
52.rstatus[file-name]若未指定文件名,则显示远程主机的状态,否则显示文件状态。
53.rename[from][to]更改远程主机文件名。
54.reset清除回答队列。
55.restart marker从指定的标志marker处,重新开始get或put,如restart 130。
56.rmdir dir-name删除远程主机目录。
57.runique设置文件名唯一性存储,若文件存在,则在原文件后加后缀。
58.send local-file[remote-file]同put。
59.sendport设置PORT命令的使用。
60.site arg1,arg2……将参数作为SITE命令逐字发送至远程ftp主机。
61.size file-name显示远程主机文件大小,如site idle 7200。
62.status显示当前ftp状态。
63.struct[struct-name]将文件传输结构设置为struct-name,缺省时使用stream结构。
64.sunique将远程主机文件名存储设置为唯一(与runique对应)。
65.system显示远程主机的操作系统类型。
66.tenex将文件传输类型设置为TENEX机所需的类型。
67.tick设置传输时的字节计数器。
68.trace设置包跟踪。
69.type[type-name]设置文件传输类型为type-name,缺省为ascii,如typebinary,设置 二进制传输方式。
70.umask[newmask]将远程服务器的缺省umask设置为newmask,如umask 3。
71.useruser-name[password][account]向远程主机表明自己的身份,需要口令时,必须输入口令,如user anonymous my@email。
72.verbose同命令行的-v参数,即设置详尽报告方式,ftp服务器的所有响应都将显示给用户,缺省为on.
73.?[cmd]同help。
那么如何应用这些命令提高效率呢?下面我举一个例子,如何利用fttp进行
后台下载,假设你的ISP给你提供了shell并且可以用nohup,你想由fttp.downlo
ad.com/pub/internet/下载一个30M的程序aaa.zip具体步骤如下:
1.用notepad做一个文件如aaa1内容如下
open ftp.dwonload.com user an onymous [email protected]
cd /pub/internet/ i get aaa.zip close bye
2.拨号登录到你的ISP上。
用telnet 或netterm登录到shell,一般都在你的home子目录里bbs~/
3.用fttp上传aaa1到ISP服务器你的子目录。
4. 执行nohup fttp -invd aaa2& 这样这个进程就被放在ISP服务器的后台进行了,
如果你想知道情况如何,可以more aaa2就可以知道情况如何了。这时你可以断线了或干点别的,
估计时间到了(time约=30M/(33.6K/9)s)拨号上去,more aaa2如果显示成功下载aaa.zip,
就表示aaa.zip已经被下载到ISP的服务器上了,你再由ISP的服务器拉回来就相当与点对点了,
记得下载完成后del掉你的文件(aaa.zip),免得浪费ISP资源,它会关掉shell的。
⑼ 在C#中怎样自动下载ftp中指定目录下的一个文件
public string Download(string filePath, string fileName)////上面的衡裂腔代码实现了从ftp服务器下载文件的功咐衫能
{
try
{
String onlyFileName = Path.GetFileName(fileName);
string newFileName = filePath + "源汪\\" + onlyFileName;
if (File.Exists(newFileName))
{
return "本地文件" + newFileName + "已存在,无法下载";
}
string url = "ftp://" + ftpServerIP + "/" + fileName;
Connect(url);//连接
reqFTP.Credentials = new NetworkCredential(ftpUserID, ftpPassword);
FtpWebResponse response = (FtpWebResponse)reqFTP.GetResponse();
Stream ftpStream = response.GetResponseStream();
long cl = response.ContentLength;
int bufferSize = 2048;
int readCount;
byte[] buffer = new byte[bufferSize];
readCount = ftpStream.Read(buffer, 0, bufferSize);
FileStream outputStream = new FileStream(newFileName, FileMode.Create);
while (readCount > 0)
{
outputStream.Write(buffer, 0, readCount);
readCount = ftpStream.Read(buffer, 0, bufferSize);
}
ftpStream.Close();
outputStream.Close();
response.Close();
return "";
}
catch (Exception ex)
{
return "因"+ex.Message+",无法下载";
}
}
⑽ 用FTP下载如何下载到指定的文件夹啊
我记得在linux下是默认下载到你当前目录下,如果你想下载到指定的目录下,先进到这个目录,然后再ftp