【发布时间】:2015-07-29 21:26:14
【问题描述】:
我有一个用于记录磁盘使用情况的小脚本,如下所示:
#!/bin/bash
date=$(date +"%d.%m.%Y")
while read -r filesystem;
do
filesys=${filesystem}
df -P | tr -d "%" | awk '$6=="'"$filesys"'" {print"'"$date"'"",",$6","$5}' >> /root/disk.csv
done < "/root/disklist"
/root/磁盘列表:
/
/dev/mapper/map1
/root/disk.csv:
18.05.2015, /,18
18.05.2015, /dev/mapper/map1,1
当我运行这个脚本时,打印到 disk.csv 的新行。我需要查看实际数据,所以当我运行这个脚本时,我需要更新到关于同一日期的同一行(不是插入)。
不是这样的:
运行 - 18.05.2015 13:00
18.05.2015, /,18
18.05.2015, /dev/mapper/map1,1
运行 - 18.05.2015 15:00
18.05.2015, /,18
18.05.2015, /dev/mapper/map1,1
18.05.2015, /,19
18.05.2015, /dev/mapper/map1,5
运行此脚本时,我需要更改旧行(如果日期相同)。我该怎么做?
【问题讨论】:
-
将
>>更改为>?祝你好运。 -
我知道这一点。但是
>删除我昨天的旧台词,以及更早的台词。