shell定时下载ftp文件并重命名放到指定文件夹
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了shell定时下载ftp文件并重命名放到指定文件夹相关的知识,希望对你有一定的参考价值。
用shell实现,去当天的文件,文件名为2011-12-18XXX.txt,下载到本地后改名为111218XXX.txt最主要的是这个问题,然后就是定时的问题,我把0 3 * * * /home/sh XXX.sh
加入到crontab -e里面,但是到时候根本就不执行。。。求高手解答。。
ftp -i -n $FTPIP<<FTPIT # -i:关闭交互窗口,-n:关闭自动登录, $FTPIP:shell脚本设置的ftpip $FTP_STR #$FTP_STR :ftp链接,格式:user 用户名 密码
bin #使用二进制的传输文件格式
hash #每传输一个字符块(8192字节)打印一个#符号
get $FILE_PATH/2011-12-18XXX.txt 111218XXX.txt #下载文件并重命名文件为111218XXX.txt
quit #退出ftp
FTPIT 参考技术A 到你执行这个sh的用户的mail文件里面去看日志,比如你是用的root用户,那么你可以打开/var/mail目录下的root文件,里面会记录3点钟crontab的执行情况。
一般来说问题2个方面:
1.这个sh本身不对,你可以单独执行这个sh来调试
2.sh缺少执行权限
有问题可以追问,希望对你有帮助追问
连接ftp之后,要取出ftp主目录下的文件列表名字,然后保存到本地目录下面怎么弄??
#!/bin/sh
ftp 10.1.42.22 << END
user ftp ftp
……
bye
在省略号这边操作。。
crontab 后面命令要绝对路径追问
连接ftp之后,要取出ftp主目录下的文件列表名字,然后保存到本地目录下面怎么弄??
#!/bin/sh
ftp 10.1.42.22 << END
user ftp ftp
……
bye
在省略号这边操作。。
以上是关于shell定时下载ftp文件并重命名放到指定文件夹的主要内容,如果未能解决你的问题,请参考以下文章