【原创】自动化下载并检测ftp文件备份

简介:

 #!/bin/bash

#ftime0=$(ll /root/hbshell/down.txt | awk '{print $7}')
#ftime1=$(ll /root/hbshell/down.txt | awk '{print $7}')
touch /root/hbshell/down.txt
 
while :
do
if  [[ /root/hbshell/down.txt  -nt /root/hbshell/down_cp.txt ]]
then 
user=root
passwd=19871022
host=192.168.1.202
dir=/tmp/down/$(date +%Y%m%d)/$(date +%H%M)
mkdir  -p $dir
cd $dir
#cat /root/hbshell/down.txt|sed   -e  's#^ */##'  -e 's# *##' -e 's#^[^a-zA-Z]*##'>/root/hbshell/zdown.txt
cat  /root/hbshell/down.txt|sed  's#^[^a-zA-Z]*##'>/root/hbshell/zdown.txt
 
declare -a gg=($(cat /root/hbshell/zdown.txt))
declare -i i
for ((i=0;i<${#gg[@]};i=$i+1))
do
echo ${gg[$i]}|grep -q "/"
if echo $?| grep -q  0
then
 
tmpdir=$(echo ${gg[$i]} | sed 's#\(.*/\)\(.*$\)#\1#')
mkdir  -p  ./$tmpdir
 
fi
done
/usr/bin/ftp -i -in <<!
open $host 
user $user $passwd
bin
mget $(echo ${gg[@]}) 
bye
!
 
declare -i j
declare -i num
num=0
for ((j=0;j<${#gg[@]};j=$j+1))
do
if [[ -f $(echo ${gg[$j]}) ]]
  then
 ls -l $(echo ${gg[$j]})
num=$num+1
 else
echo -e "\033[31m File ${gg[$j]} is not down!! \033[0m"
     
fi
 
done
echo "That Files all down total is $num "
\cp /root/hbshell/down.txt  /root/hbshell/down_cp.txt
fi
done
 
 


      本文转自hb_fukua  51CTO博客,原文链接:http://blog.51cto.com/2804976/558803 ,如需转载请自行联系原作者

相关文章
|
8月前
|
数据采集 前端开发 JavaScript
深挖navigator.webdriver浏览器自动化检测的底层分析
本文详细讲解了如何通过技术手段破解浏览器 `navigator.webdriver` 检测,结合爬虫代理、多线程等策略,在豆瓣图书页面批量采集数据。具体包括:隐藏 Selenium 特征、配置代理突破 IP 限制、设置伪装用户、利用多线程提升效率。文章面向初学者,提供分步教程与示例代码,同时设有「陷阱警告」帮助规避常见问题。目标是从底层实现反检测,高效采集图书评分、简介、作者等信息,适合具备 Python 和 Selenium 基础的读者实践学习。
331 12
深挖navigator.webdriver浏览器自动化检测的底层分析
|
9月前
|
数据采集 JavaScript 前端开发
浏览器自动化检测对抗:修改navigator.webdriver属性的底层实现
本文介绍了如何构建一个反检测爬虫以爬取Amazon商品信息。通过使用`undetected-chromedriver`规避自动化检测,修改`navigator.webdriver`属性隐藏痕迹,并结合代理、Cookie和User-Agent技术,实现稳定的数据采集。代码包含浏览器配置、无痕设置、关键词搜索及数据提取等功能,同时提供常见问题解决方法,助你高效应对反爬策略。
794 1
|
10月前
|
关系型数据库 Shell 网络安全
定期备份数据库:基于 Shell 脚本的自动化方案
本篇文章分享一个简单的 Shell 脚本,用于定期备份 MySQL 数据库,并自动将备份传输到远程服务器,帮助防止数据丢失。
|
12月前
|
监控 网络安全 开发者
Python中的Paramiko与FTP文件夹及文件检测技巧
通过使用 Paramiko 和 FTP 库,开发者可以方便地检测远程服务器上的文件和文件夹是否存在。Paramiko 提供了通过 SSH 协议进行远程文件管理的能力,而 `ftplib` 则提供了通过 FTP 协议进行文件传输和管理的功能。通过理解和应用这些工具,您可以更加高效地管理和监控远程服务器上的文件系统。
437 20
|
网络安全 Windows
Jetson 学习笔记(十五):FTP协议传输文件
本文介绍了如何使用WinSCP软件通过FTP协议在Windows和Jetson设备之间传输文件,并分享了一些操作经验和技巧。
264 0
Jetson 学习笔记(十五):FTP协议传输文件
|
中间件 Docker Python
【Azure Function】FTP上传了Python Function文件后,无法在门户页面加载函数的问题
通过FTP上传Python Function至Azure云后,出现函数列表无法加载的问题。经排查,发现是由于`requirements.txt`中的依赖包未被正确安装。解决方法为:在本地安装依赖包到`.python_packages/lib/site-packages`目录,再将该目录内容上传至云上的`wwwroot`目录,并重启应用。最终成功加载函数列表。
177 0
|
存储 运维 监控
|
运维 Oracle 关系型数据库
关系型数据库Oracle自动化备份
【7月更文挑战第21天】
224 3
|
Java
Java SpringBoot FTP 上传下载文件
Java SpringBoot FTP 上传下载文件
555 0
|
存储 Linux 文件存储
网络文件共享ftp
网络文件共享ftp