日常运维中,我们会存在每日备份的现象,针对这一种情况可能会要求监控文件是否存在。比较笨拙的方法就是登录上服务器到某个路径下查看文件是否存在,除此之外,我们可以利用shell或者python来编写监控文件是否存在的脚本来减少工作量。当然,作为一个同样是小白的我,编写的脚本可以略显简单,希望大神们可以指点指点(^_^)

1、shell编写监控文件是否存在的脚本

  我们可以利用CRT或者xshell等工具编写:

  以下是shell中判断文件是否存在,若不存在,则自动创建的方法。(当然,能用英文最好用英文写注释,本人英文水平太差...)

#!/bin/bash
#判断/export/home/wlan/AUTH这个路径下是否每天都会生成AUTH_*.xml文件
#文件名称
filename=/root/AUTH_1_1_`date +%Y%m%d`.xml
if [ ! -f $filename ];then
touch $filename
echo "file mk success"
else
echo "exist"
fi

2、python编写铰孔文件是否存在的脚本(这个写了两个系统的实现,其实都差不多)

  1)Windows上:可以利用pycharm工具,当然,前提是环境都配置好了,python环境搭建可以百度一下哈

#判断文件是否存在,若不存在则创建
#导入模块
import os
import datetime #文件名称
filenameHead = "C:\\xxx"
filenameFoot = ".txt"
nowTime = datetime.datetime.now().strftime("%Y%m%d") if os.path.isfile( filenameHead + nowTime + filenameFoot ):
print("文件已存在")
else:
file = open ( filenameHead + nowTime + filenameFoot,"w" )
file.close ()
print("文件已创建")

  2)Linux上:同样是使用CRT等工具,只不过文件结尾都是.py的格式,具体的可以自己实现一下看看

#确认字符类型
#-*- coding:utf-8 -*-
#导入文件用来判断文件是否存在的模块
import os
#导入获取时间的模块
import datetime
#变量,获取当前时间
nowtime = datetime.datetime.now().strftime("%Y%m%d")
#变量,定义文件所在路径
path = "/home/tnms2/python/"
#变量,定义文件前缀
fileHead = "xxx"
#变量,定义文件后缀
fileFoot = ".txt" #判断文件是否存在
if os.path.isfile( path + fileHead + nowtime + fileFoot ):
print( "The " + fileHead + nowtime + fileFoot + " exist" )
#若不存在,则创建文件
else:
#创建文件的语法
file = open( path + fileHead + nowtime + fileFoot,"w" )
file.close()
print( "The " + fileHead + nowtime + fileFoot + " touch successed" )

以上都是可以判断文件是否存在的脚本,恩,算是脚本吧,虽然看着比较简单。如果想要每天都能看到,咱们可以设置一个定时任务并将执行结果打印出来,这样每天只需要登录服务器查看打印出来的文件即可。

#设置定时任务
corntab -e
#每天九点自动执行脚本并且将结果追加到file_exist.log中
00 9 * * * python /export/home/wlan/file_exist.py >> /export/home/wlan/file_exist.log

  

shell与python判断文件是否存在的更多相关文章

  1. 【Python备忘】python判断文件和文件夹是否存在

    python判断文件和文件夹是否存在 import os os.path.isfile('test.txt') #如果不存在就返回False os.path.exists(directory) #如果 ...

  2. Python判断文件和文件夹是否存在的方法

    Python判断文件和文件夹是否存在的方法 这篇文章主要介绍了Python判断文件和文件夹是否存在的方法,本文还讲解了判断是否为文件或者目录的方法.os.path.lexist的作用.FTP中判断文件 ...

  3. Python 判断文件是否存在的三种方法

    通常在读写文件之前,需要判断文件或目录是否存在,不然某些处理方法可能会使程序出错.所以最好在做任何操作之前,先判断文件是否存在. 这里将介绍三种判断文件或文件夹是否存在的方法,分别使用os模块.Try ...

  4. python 判断文件是否存在和删除文件的api (其中判断文件在不在让想起这个可以强兼容jenkins工作目录那个问题)

    判断文件在不在的api: os即operating system(操作系统),Python 的 os 模块封装了常见的文件和目录操作. os.path模块主要用于文件的属性获取,exists是“存在” ...

  5. Python判断文件是否存在的三种方法

    通常在读写文件之前,需要判断文件或目录是否存在,不然某些处理方法可能会使程序出错.所以最好在做任何操作之前,先判断文件是否存在. 这里将介绍三种判断文件或文件夹是否存在的方法,分别使用os模块.Try ...

  6. Python判断文件是否存在的三种方法【转】

    转:http://www.cnblogs.com/jhao/p/7243043.html 通常在读写文件之前,需要判断文件或目录是否存在,不然某些处理方法可能会使程序出错.所以最好在做任何操作之前,先 ...

  7. python判断文件是否存在

    # 判断文件是否存在 def judgejson(jsonpath): # 如果存在就返回True,不存在就返回False return os.path.exists(jsonpath)

  8. Python 判断文件/目录是否存在

    使用 os 模块 判断文件是否存在 os.path.isfile(path) 判断目录是否存在 os.path.isdir(path) 判断路径是否存在 # 使用 path 模块 os.path.ex ...

  9. python判断文件的访问权限

    os.access(file, mode)判断文件的访问权限file为文件mode为操作模式,有这么几种:os.F_OK: 检查文件是否存在;os.R_OK: 检查文件是否可读;os.W_OK: 检查 ...

随机推荐

  1. bitnami-redmine Apache服务启动不起来

    方法一: 通过 netstat -a -o 查看端口占用情况,关闭调用相关端口的进程.  c:\> netstat -a -o  Active Connections  Proto  Local ...

  2. 16-----client、offset、scroll 系列

    1.client 代码如下: <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> ...

  3. Jenkins之自动触发部署之插件Generic Webhook Trigger Plugin

    一.安装好插件 二.构建触发器会出现设置trigger的入口 三.设置的两个部分 第一: Jenkins的这个触发器,这里主要是接受post数据.其中Post content parameters是用 ...

  4. strcpy、strncpy、strlen、memcpy、memset、strcat、strncat、strcmp、strncmp,strchr

    1.strcpy #include<stdio.h> #include<assert.h> char *mystrcpy(char *dest, const char *src ...

  5. Ubuntu14.04 查看安装的jetty的版本

    1.首先找到start.jar , Ubuntu14.04 在/usr/share/jetty 目录下, 2.然后运行 java -jar start.jar -- version 参考

  6. ACdream 1236 Burning Bridges 割边 + 去重边

    题目就是求一副图的割边,然后对于那些有重复的边的,不能算做割边. 思路就是每次加入一条边的时候,判断这条边是否存在过,存在过的话,就把那条边设为inf,表示不能作为割边.于是有了这样的代码 #incl ...

  7. 【Java密码学】Java SE 6中XML数字签名的实现

    package test.xml.signature; import java.io.File; import java.io.FileInputStream; import java.io.File ...

  8. Solr7.x介绍安装和配置(单机版)

    之前学的是4.x,然后一看官网,奶奶的都7.x了.于是查了一番资料..... 1)下载和安装 wget http://mirror.bit.edu.cn/apache/lucene/solr/7.3. ...

  9. SpringBoot | 第二十六章:邮件发送

    前言 讲解了日志相关的知识点后.今天来点相对简单的,一般上,我们在开发一些注册功能.发送验证码或者订单服务时,都会通过短信或者邮件的方式通知消费者,注册或者订单的相关信息.而且基本上邮件的内容都是模版 ...

  10. Docker | 第二章:第一个Docker应用

    前言 上一章节,已经简单讲解了Docker相关方面的知识,相信大家已经有个概念了.这章节开始,开始进行实践操作.和学习任何一门语言一样,我们今天也开始从Hello,World开始~ 对Docker不了 ...