求一shell脚本:定时备份日志文件然后用FTP上传到指定IP的机器上。 写个你参考吧(备份日志文件就不用说了吧 你的主要难点就是在FTP上传这里)定时的话就放在crotable里面去做。USERNAME=rootPASSWORD=123456PATH=root/bak/rundir=.(你的日志路径)SERVERIP=192.168.1.1getfilenametofile(){echo\"user$USERNAME$PASSWORDecho\"asciiecho\"hashecho\"cd$PATHecho\"ls*.bak filenameecho\"yecho\"closeecho\"byeftp-n-i$SERVERIP 1>;$rundir/getfileok.log 2>;$rundir/getfileerr.log}
编译一个shell脚本,ftp到主机 新建目录 拷贝文件 删除目录 退出 首先,脚本并不需要知道本身所在主机的IP,所以,用不到10.10.141.91这个源地址。再次,ftp命令中不支持直接在服务器端新建文件,只能先在本地新建后上传。其实,ftp客户端软件,如CuteFTP也都是这么做的,只是你觉察不到。bin/bashhost=\"10.10.142.72username=\"xxxx\"#这里写你的FTP登录用户名password=\"xxxxxxx\"#这里写你的FTP登录密码file1=\"testexam1file2=\"testexam2touch$file1touch$file2ftp-ni$hostquote USER$usernamequote PASS$passwordcd/home/query#切换服务器目录binaryput$file1put$file2lcd/home/query#切换本地目录get$file1delete$file1byeEOFdev/null 2>;err.log
求助:使用SHELL语言编写一个脚本实现ftp功能,将一个文件从本地a目录取到服务器b目录。 下面这个是我一直在用的,会检查ftp错误。bin/shftp_put(){n:不使用auto-login;i:不使用交互式提示输入ftp-n-i$ipAddrquote USER$usernamequote PASS$passwordcd blcd abinaryput$myfilebyeEOF}ipAddr=ftp地址username=你的ftp用户名password=你的ftp密码myfile=你要传的文件名(只要名称无需路径)putErrlog=用于记录ftp错误的日志文件ftp_put>;/dev/null 2>;$putErrlog#ftp错误导入日志文件bytes=`wc-c$putErrlog|awk '{print$1}'`#检查错误日志文件的字节大小if[$bytes-ne 0];then#大小不为0说明发生了错误,之后可以手动打开文件检查错误原因echo\"FTP put failed。exit 1elseecho\"FTP put successfully。fiexit 0