- 論壇徽章:
- 0
|
linux ftp 腳本上傳自動忽略大文件
因需要需將oracle的備份ftp 到另一臺windows ftp server 上
腳本如下:
ftp.sh
ls /dbbackup |grep `date +%Y%m%d` > ftpfile
echo "open 10.21.*.*" > ftpcmd
echo "user administrator ******">>ftpcmd
echo " lcd /dbbackup">>ftpcmd
echo " cd /ycyw ">>ftpcmd
echo "bin">>ftpcmd
echo "prompt">>ftpcmd
awk '{print "mput ",$0;}' ftpfile >>ftpcmd
echo "quit">>ftpcmd
ftp -ivn <ftpcmd >ftp.log
exit
腳本生成的ftpfile 如下:
cron_ORCL_20160517_d1r5r8bd.bak
fdb_20160517_cur5r4ns.dbf
fdb_20160517_cvr5r6iq.dbf
log_ORCL_20160517_d0r5r6lo.bak
spfile_ORCL_20160517_d2r5r8c0.bak
腳本生成的ftpcmd 如下:
open 10.21.*.*
user administrator ******
lcd /dbbackup
cd /ycyw
bin
prompt
mput cron_ORCL_20160517_d1r5r8bd.bak
mput fdb_20160517_cur5r4ns.dbf
mput fdb_20160517_cvr5r6iq.dbf
mput log_ORCL_20160517_d0r5r6lo.bak
mput spfile_ORCL_20160517_d2r5r8c0.bak
quit
問題出來了,明明生成的腳本是上傳5個文件,可是實際只上傳了三個比較小的文件,ftp.log如下:
Connected to 10.21.*.* (10.21.*.*).
220 Microsoft FTP Service
Remote system type is Windows_NT.
331 Password required for administrator.
230 User logged in.
Local directory now /dbbackup
250 CWD command successful.
200 Type set to I.
Interactive mode on.
mput cron_ORCL_20160517_d1r5r8bd.bak? 227 Entering Passive Mode (10,21,73,19,193,115).
125 Data connection already open; Transfer starting.
226 Transfer complete.
7438336 bytes sent in 14.6 secs (5e+02 Kbytes/sec)
mput fdb_20160517_cvr5r6iq.dbf? 227 Entering Passive Mode (10,21,73,19,193,116).
125 Data connection already open; Transfer starting.
226 Transfer complete.
7471104 bytes sent in 12.6 secs (5.8e+02 Kbytes/sec)
mput spfile_ORCL_20160517_d2r5r8c0.bak? 227 Entering Passive Mode (10,21,73,19,193,117).
125 Data connection already open; Transfer starting.
226 Transfer complete.
98304 bytes sent in 0.251 secs (3.8e+02 Kbytes/sec)
221 Goodbye.
這里顯示實際只上傳了3個文件,2個比較大的,ftp直接忽略了。求大神指教! 單個傳大文件是能夠上傳成功的。
這是為什么。 |
|