$ find -mtime +1 ${DIR} -name "*.${EXT}"
2. calculate the last modified time (seconds since epoch)
$ MOD_SECS=$(stat -c%Y ${FILE})
3. convert the seconds since epoch into a human readable date format
$ MOD_DATE=$(date +\%Y-\%m-\%d --date="@${MOD_SECS}")
4. create a gzip file with the suffix including the date when the file was last modified
$ gzip -S .${MOD_DATE}.gz ${FILE}
5. putting it all together
for FILE in $(find ${DIR} -mtime +1 -name "*.${EXT}"); do
MOD_SECS=$(stat -c%Y ${FILE})
MOD_DATE=$(date +\%Y-\%m-\%d --date="@${MOD_SECS}")
gzip -S .${MOD_DATE}.gz ${FILE}
done
6. as a script:
#!/bin/bash
if [ "$#" -ne 2 ]; then
echo "Usage: $0 dir ext"
exit 1
fi
DIR=$1
EXT=$2
for FILE in $(find ${DIR} -mtime +1 -name "*.${EXT}"); do
MOD_SECS=$(stat -c%Y ${FILE})
MOD_DATE=$(date +\%Y-\%m-\%d --date="@${MOD_SECS}")
gzip -S .${MOD_DATE}.gz ${FILE}
done
No comments:
Post a Comment