首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >每日生成一个固定日期格式的文件,并将磁盘的使用情况记录到文件中

每日生成一个固定日期格式的文件,并将磁盘的使用情况记录到文件中

作者头像
运维小白
发布于 2022-01-06 06:09:48
发布于 2022-01-06 06:09:48
1.1K00
代码可运行
举报
文章被收录于专栏:运维小白运维小白
运行总次数:0
代码可运行
  • 要求:
    • 按照(xxxx-xx-xx)这样的日期格式每日生成一个文件,比如今天生成的文件为2018-2-7.log,并且把磁盘的使用情况写到这个文件中(不考虑cron,仅仅写脚本)
  • 需求分析
    • 这个脚本中有两点,一是按照日期的格式来生成文件
    • 二是把磁盘的使用情况写到这个文件中
  • 实现
  • 日期文件格式为(xxxx-xx-xx),两种方法实现,date命令笔记
  • date +%F
  • date +%Y-%m-%d
代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
[root@hf-01 ~]# date +%F
2018-02-07

[root@hf-01 ~]# date +%Y-%m-%d
2018-02-07
  1. 查看磁盘使用情况,df命令笔记
  2. df 命令查看磁盘使用情况
    • -h可以适当的使用单位,来显示磁盘使用情况
代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
[root@hf-01 ~]# df -h
文件系统        容量  已用  可用 已用% 挂载点
/dev/sda3        18G  6.5G   12G   37% /
devtmpfs        488M     0  488M    0% /dev
tmpfs           494M     0  494M    0% /dev/shm
tmpfs           494M  6.7M  487M    2% /run
tmpfs           494M     0  494M    0% /sys/fs/cgroup
/dev/sda1       197M   75M  122M   39% /boot
tmpfs            99M     0   99M    0% /run/user/0
[root@hf-01 ~]# 

脚本

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
[root@hf-01 hanfeng]# vim 01.sh
[root@hf-01 hanfeng]# cat 01.sh
#! /bin/bash
d=`date +%F`
logfile=$d.log
df -h >$logfile
[root@hf-01 hanfeng]# sh -x 01.sh
++ date +%F
+ d=2018-02-07
+ logfile=2018-02-07.log
+ df -h
[root@hf-01 hanfeng]# ls
01.sh  2018-02-07.log
[root@hf-01 hanfeng]# cat 2018-02-07.log 
文件系统        容量  已用  可用 已用% 挂载点
/dev/sda3        18G  6.5G   12G   37% /
devtmpfs        488M     0  488M    0% /dev
tmpfs           494M     0  494M    0% /dev/shm
tmpfs           494M  6.7M  487M    2% /run
tmpfs           494M     0  494M    0% /sys/fs/cgroup
/dev/sda1       197M   75M  122M   39% /boot
tmpfs            99M     0   99M    0% /run/user/0
[root@hf-01 hanfeng]# 
  • 会看到当前目录下,生成了2018-02.07.log的日志文件,并且这个日志文件中记录了是磁盘的使用情况

扩展

  1. shell脚本中反引号可以表示为一个命令的结果,通常给变量赋值(PS:注意在赋值等于号两边不要有空空格,否则会报错,比如 n=wc -l /etc/passwd ,但若是n= wc -l /etc/passwd就会报错)
代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
[root@hf-01 hanfeng]# n=`wc -l /etc/passwd |awk '{print $1}'`
[root@hf-01 hanfeng]# echo $n
23
[root@hf-01 hanfeng]# 
  1. 符号 > 为正确重定向,在运行一条命令的时候,会有正确和错误的输出信息,>会把正确的输出信息输入到指定文件里,而 2> 会把错误的信息写入到指定文件里

小练习

  • 需求
    • 每日生成一个固定日期格式的文件,并将根目录下的所有文件名记录到文件中
代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
[root@hf-01 shell]# cat 001.sh
#! /bin/bash
d=`date +%F`
wenjian=$d.log
ls -l / > $wenjian
echo "$wenjian" > /tmp/log
[root@hf-01 shell]# sh -x 001.sh
++ date +%F
+ d=2018-02-08
+ wenjian=2018-02-08.log
+ ls -l /
+ echo 2018-02-08.log
[root@hf-01 shell]# 

改良版本

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
#/bin/bash
read  -p "请输入目录路径:"  a
if  [  !  -d  $a ]
then
echo "$a不是目录"
else
d=`date +%F`
ls -l  $a > /tmp/$d.log
echo "$a是目录"
fi
本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2018/02/07 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
14.4 exportfs命令
exportfs命令 常用选项 -a 全部挂载或者全部卸载 -r 重新挂载 -u 卸载某一个目录 -v 显示共享目录 以下操作在服务端上 -vim /etc/exports //增加 /tmp/ 192.168.133.0/24(rw,sync,no_root_squash) exportfs -arv //不用重启nfs服务,配置文件就会生效 以下操作在客户端 mkdir /aminglinux mount -t nfs -onolock 192.168.133.130:/tmp /aminglinux
运维小白
2018/02/06
9010
2.21 软链接文件
软链接其实就是在一个文件本身存了另一个文件目录的路径。链接文件的大小适合路径是有关系的,路径越长,那这个软链接文件越大
运维小白
2022/01/06
8720
Linux基础(day56)
14.1 NFS介绍 NFS介绍 NFS是Network File System的缩写;这个文件系统是基于网路层面,通过网络层面实现数据同步 NFS最早由Sun公司开发,分2,3,4三个版本,2和3由Sun起草开发,4.0开始Netapp公司参与并主导开发,目前最新为4.1版本——>4.1版本是2010年出来还没更新过 NFS数据传输基于RPC协议,RPC为Remote Procedure Call的简写,意思为 远程过程调用 例子: 服务端和客户端通信,A机器和B机器之间不能直接通信
运维小白
2018/02/06
7480
Linux基础(day56)
Linux基础(day16)
(若系统中没做lvm操作,但是 df -h 查看时会发现存在lvm文件,那是因为在安装系统的时候,未设置手动分区,系统就默认以lvm的形式分区了) 4.10/4.11/4.12 lvm讲解 LVM讲解
运维小白
2018/02/06
1.8K0
Linux基础(day16)
Linux基础(day9)
这drwxrwxrwt.里面的t(t里面包含x权限),就是stick_bit权限,
运维小白
2022/01/06
8250
Linux系列之查看cpu、内存、磁盘使用情况
df命令用于显示磁盘分区上的可使用的磁盘空间。默认显示单位为KB。可以利用该命令来获取硬盘被占用了多少空间,目前还剩下多少空间等信息。使用df -h命令,加个-h参数是为了显示GB MB KB单位,这样更容易查看
SmileNicky
2024/05/24
1.9K0
Linux系列之查看cpu、内存、磁盘使用情况
4.7/4.8 磁盘挂载
只有格式化后,才能挂在文件系统 先把磁盘中的分区删除(不管是否分区,都可格式化) 然后格式化文件系统,mkfs.xfs /dev/sdb [root@hf-01 ~]# mkfs.xfs -f /dev/sdb meta-data=/dev/sdb isize=256 agcount=4, agsize=1310720 blks = sectsz=512 attr=2, projid32bit=1
运维小白
2018/02/06
1.7K0
Linux基础(day57)
14.4 exportfs命令 exportfs命令 常用选项 -a 全部挂载或者全部卸载 -r 重新挂载 -u 卸载某一个目录 -v 显示共享目录 以下操作在服务端上 -vim /etc/exports //增加 /tmp/ 192.168.133.0/24(rw,sync,no_root_squash) exportfs -arv //不用重启nfs服务,配置文件就会生效 以下操作在客户端 mkdir /aminglinux mount -t nfs -onolock 192.168.133.130:/
运维小白
2018/02/06
1.5K0
Linux基础(day57)
Ansible批量执行shell脚本,检查服务器的磁盘使用情况
使用ansible的shell命令可以执行shell脚本以及命令(包含管道),下面来看看怎么执行shell脚本。
Devops海洋的渔夫
2019/05/31
7.7K0
CentOS7默认安装的/home中转移空间到根目录/ - LVM操作简明教程
转自 http://blog.csdn.net/evandeng2009/article/details/49814097
@凌晨
2020/05/28
3.2K0
CentOS7默认安装的/home中转移空间到根目录/ - LVM操作简明教程
ORA-17627: ORA-12577:关于文件存储满的问题
问题描述:搭建DG的时候,要rman从orcl恢复到orclstd数据库来,dup复制了半天,结果最后报错:ORA-17627: ORA-12577: Message 12577 not found; product=RDBMS;                          facility=ORA网上找了文档,查到是磁盘被写满的问题于是就解决一下。
星哥玩云
2022/08/18
5580
ORA-17627: ORA-12577:关于文件存储满的问题
Linux基础篇——Linux磁盘操作(磁盘基础知识、分类、分区、挂载、卸载、扩容)详解「建议收藏」
  假如你有个大木桶要装东西,如果木桶没有划分层,所有东西全部放入里面,虽然可以装,但是对大木桶的使用就合不合理,造成杂乱无章,寻找东西时候也耗时,甚至还有不同物品之间不能存放在一起而导致危险,那更好的做法自然是给大木桶画一下不同的区域,分成不同的层,每个层放不同的东西,即安全,寻找起来也方便;
全栈程序员站长
2022/09/01
8.6K0
Linux基础篇——Linux磁盘操作(磁盘基础知识、分类、分区、挂载、卸载、扩容)详解「建议收藏」
df和du显示的磁盘空间使用情况不一致的原因及处理
在Linux下查看磁盘空间使用情况,最常使用的就是du和df了。然而两者还是有很大区别的,有时候其输出结果甚至非常悬殊。 1. 如何记忆这两个命令 du-Disk Usage df-Disk Free 2. df 和du 的工作原理 2.1 du的工作原理 du命令会对待统计文件逐个调用fstat这个系统调用,获取文件大小。它的数据是基于文件获取的,所以有很大的灵活性,不一定非要针对一个分区,可以跨越多个分区操作。如果针对的目录中文件很多,du速度就会很慢了。 2.2 df的工作原理 df命令使用的事s
猿人谷
2018/01/17
5.2K0
Linux基础(day38)
10.32/10.33 rsync通过服务同步 rsync 通过服务的方式同步 要编辑配置文件/etc/rsyncd.conf 启动服务rsync --daemon 格式:rsync -av test1/ 192.168.202.130::module/dir/ rsync同步文件 rsync 通过服务的方式同步,首先需要开启一个服务,是cs架构,客户端和服务端 服务端,开启一个rsync服务,并且一个端口,默认是873——>(端口是可以自定义的) 格式:rsync -av test1/ 192.168.
运维小白
2018/02/06
1K0
14.3 NFS配置选项
NFS配置选项 rw 读写 ro 只读 sync 同步模式,内存数据实时写入磁盘,相应的就会降低磁盘效率 async 非同步模式,它会每隔一段时间才会将数据刷新到磁盘 优势:能够保证磁盘的效率 劣势:万一断电,就会有可能丢失一部门数据 no_root_squash 客户端挂载NFS共享目录后,root用户不受约束,权限很大 NFS,要想在客户端上去使用服务端上共享的目录,需要去把它挂载到客户端上的一个挂载点,那就跟本地上的目录是一样的,在操作本地的目录时候,肯定会有一些权限设置,如果加上no_root_
运维小白
2018/02/06
9780
常用Linux命令集锦
常用linux命令: 随机数 时间 ip 日志分析 硬件信息 进程端口 调整分区大小 随机数 生成10以内的随机数 echo $RANDOM%10 | bc 生成11-20之间的随机数 echo $(($(date +%s)%11+20-11)) 时间 获取当前系统的时间 date|cut -c 1-26 # 2016年 07月 23日 星期六 19:12:40 查看硬件时间 hwclock 修改系统时间 date -s "2019-03-29 13:58:00" 将系统时间同步到硬件时间 hwclock
职场亮哥
2020/10/10
5840
Linux下针对服务器网卡流量和磁盘的监控脚本
1)实时监控网卡流量的通用脚本: [root@ceph-node1 ~]# cat /root/net_monit.sh #!/bin/bash PATH=/bin:/usr/bin:/sbin:/usr/sbin:/usr/local/bin:/usr/local/sbin; export PATH function traffic_monitor { OS_NAME=$(sed -n '1p' /etc/issue) eth=$1 if [ ! -d /sys/class/net/$
洗尽了浮华
2018/07/04
1.9K0
Linux基础(day63)
18.1 集群介绍 Linux集群概述 根据功能划分为两大类:高可用和负载均衡 1.高可用集群通常为两台服务器,一台工作,另外一台作为冗余,当提供服务的机器宕机,冗余将接替继续提供服务 高可用衡量标准,4个九,就是99.99%,表示一个比例,在一年时间内99.99%的时间都是在线的,不允许宕机,不允许服务不可用。另外还有的是5个九,6个九 实现高可用的开源软件有:heartbeat、keepalived heartbeat软件,在centos6中有很多bug,而且很久没有更新版本了,不建议继续使用 k
运维小白
2018/02/06
1.1K0
Linux基础(day63)
一次线上服务器磁盘耗尽的问题排查处理
发现很多文件是删除的状态,但是空间还未释放,应该是有进程还在使用这些文件,导致这些以被删除的文件一致被占用,无法释放磁盘空间。
IT云清
2019/07/10
7590
磁盘挂载、磁盘格式化、swap分区 原
语法: mke2fs [选项] [参数] 选项: -L:=label,预设该分区的标签 -t:用来指定文件系统的类型(xfs、ext4、ext3、ext2等) -b:分区时指定每个数据块的大小,目前支持1024、248、4096 bytes每个块 -i:设定inode大小,默认单位是byte -N:设定inode数量,有时候默认的数量不够用,所以需要自己设定inode数量 -c:在格式化之前先检测一下磁盘是否有问题,加上这个选项后会非常慢 -m:格式化时,指定预留给管理员的磁盘比例,是一个百分比,只针对mke2fs命令
阿dai学长
2019/04/03
2.6K0
相关推荐
14.4 exportfs命令
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档