免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 2091 | 回复: 9
打印 上一主题 下一主题

自动FTP脚本求助 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2005-05-31 16:27 |只看该作者 |倒序浏览
数据备份下来放到一个unload目录里面,全是.dat结尾的文件,大概有6,70个。我现在用的这个shell来备份
ftp -ni xx.xx.xx.xx<<!
user username  pwd
bi
put a.dat
put b.dat
put c.dat
put d.dat
put e.dat
put f.dat
put g.dat
put h.dat
。。。。
这样每次有新的.dat,我都得手工加进去,感觉太麻烦,也怕加掉了文件。不知道能不能写个可以备份目录里所有.dat文件的shell?

看到mymm版的这个shell
ftp -ni <<ENDOFSCRIPT
open 192.168.20.100
user username  pwd
bin
prom
cd /u
mput *
close
bye
ENDOFSCRIPT
对其中的<<ENDOFSCRIPT 不理解,prom 这个是什么意思?
谢谢大家。

论坛徽章:
0
2 [报告]
发表于 2005-05-31 18:57 |只看该作者

自动FTP脚本求助

ftp -ni <<ENDOFSCRIPT
文档
ENDOFSCRIPT

由<<ENDOFSCRIPT和ENDOFSCRIPT包围的文档,被作为命令的标准输入,这是shell语法。其中ENDOFSCRIPT可以为其他串。

rm -i file 时,会提示你是否删除,这叫prompt
prom命令的作用是打开prompt开关,若prompt开关打开,则ftp执行删除命令时也会提示你。prompt开关默认打开。

man ftp 查看更详细的资料

论坛徽章:
0
3 [报告]
发表于 2005-06-01 08:10 |只看该作者

自动FTP脚本求助

ENDOFSCRIPT 和prompt明白了,那么我想写的那个shell该怎么写呢?

论坛徽章:
0
4 [报告]
发表于 2005-06-02 09:10 |只看该作者

自动FTP脚本求助

肉顶一个

论坛徽章:
0
5 [报告]
发表于 2005-06-02 14:03 |只看该作者

自动FTP脚本求助

Maybe you can try:

ftp -n xxx.xxx.xxx.xxx <<ENDOFSCRIPT
user username  pwd
bin
mkdir upload
lcd /local/filepath (本地路径。要备份的文件位置)
prompt
cd upload
mput *.dat
bye
ENDOFSCRIPT
echo "backup ok"

论坛徽章:
0
6 [报告]
发表于 2005-06-03 14:47 |只看该作者

自动FTP脚本求助

谢谢楼上兄弟,我现在用的这个就是用正常
ftp -ni xxx.xxx.xxx.xxx<<!
user username  pwd
bin
mput *.taz
mput *.dat
bye

我没加ENDOFSCRIPT和prompt有什么问题不?
还有就是结尾的echo "backup ok"我加后也不能显示

论坛徽章:
0
7 [报告]
发表于 2005-06-03 16:18 |只看该作者

自动FTP脚本求助

我有个问题。要是用户名或者密码中带$字符。。该怎么办处理

论坛徽章:
0
8 [报告]
发表于 2005-06-03 18:31 |只看该作者

自动FTP脚本求助

原帖由 "我是胖胖" 发表:
谢谢楼上兄弟,我现在用的这个就是用正常
ftp -ni xxx.xxx.xxx.xxx<<!
user username  pwd
bin
mput *.taz
mput *.dat
bye

我没加ENDOFSCRIPT和prompt有什么问题不?
还有就是结尾的echo "backup ok..........


我也没加ENDOFSCRIPT,没发生过问题啊。
echo后面的不应该不显示啊。

论坛徽章:
0
9 [报告]
发表于 2005-06-03 19:09 |只看该作者

自动FTP脚本求助

我在sco5.05下面使用的,文件名是ftp.sh,内容就是
ftp -ni xxx.xxx.xxx.xxx<<!
user username  pwd
bin
mput *.taz
mput *.dat
bye
echo "backup ok"
文件给了执行权限,执行后是这个结果
#sh ftp.sh
#

论坛徽章:
0
10 [报告]
发表于 2005-06-15 10:23 |只看该作者

自动FTP脚本求助

"ENDOFSCRIPT" 等是个卷标类型的东东,

看测试效果,估计是起控制输入/输出的有效区域作用
如:
如果你在同一个脚本连续2次ftp,后面那次估计不用指定有效区域,它就工作不正常了,
程序如下:

#use the label ENDOFSCRIPT_XXX to restrict the value area of the input and output
# start the operation here.
echo $DATE >> $FTP_LOG_FILE
echo 'down load the ring_info.file from remote site' >> $FTP_LOG_FILE
ftp -ni $FTP_SITE << ENDOFSCRIPT_ONE >> $FTP_LOG_FILE
user  $FTP_USER   $FTP_PASSWD
bin
prompt
cd $FTP_RING_INFO_DIR
ls
close
bye
ENDOFSCRIPT_ONE

echo 'down load the ring_date.file from the remote site' >> $FTP_LOG_FILE
ftp -ni $FTP_SITE << ENDOFSCRIPT_TWO >> $FTP_LOG_FILE
user  $FTP_USER   $FTP_PASSWD
bin
prompt
cd $FTP_RING_DATE_DIR
ls
close
bye
ENDOFSCRIPT_TWO

#.......
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP