每天一个shell脚本(3)
题目:
请按照这样的日期格式(xxxx-xx-xx)每日在/test目录下生成一个文件(判断目录是否存在),例如今天生成的文件为 2018-6-11.log, 并且把磁盘的使用情况写到到这个文件中)
需要知识:
- 日期date函数
获取 yyyy-mm-dd 日期格式
`date "+%Y-%m-%d"`
``符号包裹,代表这是一句linux命令,不是字符。
%Y-%m-%d %H:%I: %S分别代表完整的年-月-日 时:分:秒
使用date函数把日期转化为时间戳:
`date +%s -d "2019-04-16"`
- 判断目录
shell中判断语句 if,格式为:
#-d代表是否目录 !代表取反 注意两者中间要有空格
if [ ! -d xxx ]
then #后执行为真的逻辑
mkdir xxx
fi
- 生成文件
直接使用linux命令touch生成即可:
touch a.log
- 文件写入
文件写入使用输出关键词echo
echo 'aaa' > a.log # 清空原有,写入
echo 'bbb' >> a.log # 追加写入
- 查看磁盘情况:
# 查看服务器分区整体情况
df -h
#遍历查看该目录下所有目录大小
du -h dirname
#计算该目录大小
du -sh dirname
# 查看制定目录下每个目录大小
# 不写目录名称则查看当前目录
du --max-depth=1 -h [dirname]
# 查看指定文件大小
du -b filename
- 生成文件
直接使用linux命令touch生成即可:
touch a.log
- 文件写入
文件写入使用输出关键词echo
echo 'aaa' > a.log # 清空原有,写入
echo 'bbb' >> a.log # 追加写入
- 查看磁盘情况:
# 查看服务器分区整体情况
df -h
#遍历查看该目录下所有目录大小
du -h dirname
#计算该目录大小
du -sh dirname
# 查看制定目录下每个目录大小
# 不写目录名称则查看当前目录
du --max-depth=1 -h [dirname]
# 查看指定文件大小
du -b filename