用批处理来自动执行FTP命令
2011-05-12 17:30
357 查看
http://bbs.winzheng.com/viewthread.php?tid=1076709
用批处理来自动执行FTP命令
不知道有没有人聊过类似的话题,但是这的确是我自己摸索出来的一点个人小经验:
也许现在BT、eMule更被大家所关注,当初在学校的时候还是很喜欢ftp这种文件的传输方式。
在没有强大的FTP客户端的情况下,我也是试着使用Windows自带的FTP命令上传了一个DvBBS 7的所有文件,那时候的确是很痴迷!
我们的Windows是自带有FTP客户端,如果你感兴趣的话,可以在开始-->运行cmd(XP是这样的,2000好像是command),然后输入ftp -help,得到ftp的命令参数及帮助:
C:/>ftp -help
Transfers files to and from a computer running an FTP server service
(sometimes called a daemon). Ftp can be used interactively.
FTP [-v] [-d] [-i] [-n] [-g] [-s:filename] [-a] [-w:windowsize] [-A] [host]
-v Suppresses display of remote server responses.
-n Suppresses auto-login upon initial connection.
-i Turns off interactive prompting during multiple file
transfers.
-d Enables debugging.
-g Disables filename globbing (see GLOB command).
-s:filename Specifies a text file containing FTP commands; the
commands will automatically run after FTP starts.
-a Use any local interface when binding data connection.
-A login as anonymous.
-w:buffersize Overrides the default transfer buffer size of 4096.
host Specifies the host name or IP address of the remote
host to connect to.
Notes:
- mget and mput commands take y/n/q for yes/no/quit.
- Use Control-C to abort commands.
这个命令并没有FlashFXP,CuteFTP等工具好用,但它的确是一个值得我们去尝试的命令。
ftp henryhoo
这样的命令来连接FTP服务器,连接以后会提示你填写用户名。这里有一点,匿名账户的用户名是anonymous,而不是空,这与其他的FTP客户端有些不同。
User (henryhoo:(none)): anonymous
331 User name okay, please send complete E-mail address as password.
Password:
填写用户密码登录,匿名用户的密码为空,直接回车即可。
完整格式:
C:/>ftp henryhoo
Connected to henryhoo.
User (henryhoo:(none)): anonymous
331 User name okay, please send complete E-mail address as password.
Password:
230 User logged in, proceed.
登录成功后,输入help,得到命令帮助,有点回到DOS时代的意味。
ftp> help
Commands may be abbreviated. Commands are:
! delete literal prompt send
? debug ls put status
append dir mdelete pwd trace
ascii disconnect mdir quit type
bell get mget quote user
binary glob mkdir recv verbose
bye hash mls remotehelp
cd help mput rename
close lcd open rmdir
这就是可以使用的一些命令了,其实那些FTP工具也都是调用这些命令来完成各种操作的。
使用help命令来寻求帮助
ftp> help mdir
mdir List contents of multiple remote directories
在这里我就不进行一一解释了,有兴趣的话可以多试试,最好在自己的机器上架设一个FTP服务器,IIS或这Serv-u都是很不错的选择,IIS更简单一些,但管理能力没有Serv-u强大。
讲的有些远了,有了前面的铺垫,批处理就简单了。
前面的FTP命令不是支持这样的命令结构吗?
FTP [-s:filename]
那么以下,就是filename里的基本模型了,每一条命令一行
open [主机名]
[用户名]
[密码]
[要执行的ftp命令]
如下面的内容就是一个匿名登录并显示根目录文件的简单脚本,将它保存成一个文件,如ftp.txt:
匿名用户的例子:
open henryhoo
anonymous
ls
其他用户的例子,在这个命令中,先打开henryhooFTP服务器,用admin登录,密码是admin,然后用ls命令查看所有文件,cd update是进入到update文件夹中,mkdir 20060801则是创建一个20060801的文件夹:
open henryhoo
admin
admin
ls
cd update
mkdir 20060801
然后我们打开命令行,执行:
C:/>ftp -s:E:/ftp.txt
对于服务器管理员来说,这也能的命令也许很有用,可以根据自己的需要把它们写成批处理文件放在任务中定期的执行,可以很灵活的进行自动管理。
就说到这里吧,关于应用还需要大家自己去摸索,去尝试,多用才是关键!
用批处理来自动执行FTP命令
不知道有没有人聊过类似的话题,但是这的确是我自己摸索出来的一点个人小经验:
也许现在BT、eMule更被大家所关注,当初在学校的时候还是很喜欢ftp这种文件的传输方式。
在没有强大的FTP客户端的情况下,我也是试着使用Windows自带的FTP命令上传了一个DvBBS 7的所有文件,那时候的确是很痴迷!
我们的Windows是自带有FTP客户端,如果你感兴趣的话,可以在开始-->运行cmd(XP是这样的,2000好像是command),然后输入ftp -help,得到ftp的命令参数及帮助:
C:/>ftp -help
Transfers files to and from a computer running an FTP server service
(sometimes called a daemon). Ftp can be used interactively.
FTP [-v] [-d] [-i] [-n] [-g] [-s:filename] [-a] [-w:windowsize] [-A] [host]
-v Suppresses display of remote server responses.
-n Suppresses auto-login upon initial connection.
-i Turns off interactive prompting during multiple file
transfers.
-d Enables debugging.
-g Disables filename globbing (see GLOB command).
-s:filename Specifies a text file containing FTP commands; the
commands will automatically run after FTP starts.
-a Use any local interface when binding data connection.
-A login as anonymous.
-w:buffersize Overrides the default transfer buffer size of 4096.
host Specifies the host name or IP address of the remote
host to connect to.
Notes:
- mget and mput commands take y/n/q for yes/no/quit.
- Use Control-C to abort commands.
这个命令并没有FlashFXP,CuteFTP等工具好用,但它的确是一个值得我们去尝试的命令。
ftp henryhoo
这样的命令来连接FTP服务器,连接以后会提示你填写用户名。这里有一点,匿名账户的用户名是anonymous,而不是空,这与其他的FTP客户端有些不同。
User (henryhoo:(none)): anonymous
331 User name okay, please send complete E-mail address as password.
Password:
填写用户密码登录,匿名用户的密码为空,直接回车即可。
完整格式:
C:/>ftp henryhoo
Connected to henryhoo.
User (henryhoo:(none)): anonymous
331 User name okay, please send complete E-mail address as password.
Password:
230 User logged in, proceed.
登录成功后,输入help,得到命令帮助,有点回到DOS时代的意味。
ftp> help
Commands may be abbreviated. Commands are:
! delete literal prompt send
? debug ls put status
append dir mdelete pwd trace
ascii disconnect mdir quit type
bell get mget quote user
binary glob mkdir recv verbose
bye hash mls remotehelp
cd help mput rename
close lcd open rmdir
这就是可以使用的一些命令了,其实那些FTP工具也都是调用这些命令来完成各种操作的。
使用help命令来寻求帮助
ftp> help mdir
mdir List contents of multiple remote directories
在这里我就不进行一一解释了,有兴趣的话可以多试试,最好在自己的机器上架设一个FTP服务器,IIS或这Serv-u都是很不错的选择,IIS更简单一些,但管理能力没有Serv-u强大。
讲的有些远了,有了前面的铺垫,批处理就简单了。
前面的FTP命令不是支持这样的命令结构吗?
FTP [-s:filename]
那么以下,就是filename里的基本模型了,每一条命令一行
open [主机名]
[用户名]
[密码]
[要执行的ftp命令]
如下面的内容就是一个匿名登录并显示根目录文件的简单脚本,将它保存成一个文件,如ftp.txt:
匿名用户的例子:
open henryhoo
anonymous
ls
其他用户的例子,在这个命令中,先打开henryhooFTP服务器,用admin登录,密码是admin,然后用ls命令查看所有文件,cd update是进入到update文件夹中,mkdir 20060801则是创建一个20060801的文件夹:
open henryhoo
admin
admin
ls
cd update
mkdir 20060801
然后我们打开命令行,执行:
C:/>ftp -s:E:/ftp.txt
对于服务器管理员来说,这也能的命令也许很有用,可以根据自己的需要把它们写成批处理文件放在任务中定期的执行,可以很灵活的进行自动管理。
就说到这里吧,关于应用还需要大家自己去摸索,去尝试,多用才是关键!
相关文章推荐
- psftp 执行批处理命令
- 批处理技巧 批处理获取上一条命令的执行结果
- BAT批处理中选择分支后启动新窗口执行命令的示例
- [开发技巧] Java调用可执行程序和批处理命令
- CentOS执行ftp命令提示ftp:command not found解决方法
- 编写批处理命令来执行JAVA文件
- ftp可以正常登录,但登录后执行ftp命令没有响应
- 用jar命令将java class文件打包以及编写方便执行jar文件的批处理文件
- C# 动态执行批处理命令
- 使用批处理文件同时打多个CMD窗口且执行多条命令
- 使用 FileZilla FTP Client连接Vsftpd在执行LIST命令后提示连接超时
- C#调用cmd执行ftp命令
- C# 动态执行批处理命令
- mvn -v 报错,’不是内部或外部命令,也不是可执行程序或批处理文件
- Windows控制台命令FTP执行原始的FTP命令
- oracle 创建作业(注意,要在plsql的命令窗口来自执行)
- 用批处理命令实现FTP文件的自动传输
- Java调用可执行文件和批处理命令
- 使用批处理文件同时打多个CMD窗口且执行多条命令
- android不是内部或外部命令,也不是可执行的程序或批处理文件