1 |
d52a5b2f
|
jenselme
|
#!/bin/sh
|
2 |
|
|
|
3 |
|
|
help="# ARGS: number of files to keep, [email address]\n
|
4 |
5185f38b
|
Julien Enselme
|
# usage: flush files from a folder except a number equal to argument.\n
|
5 |
87504d03
|
Florent Torregrosa
|
# It only prints a warning if scripts-utils.sh is not imported in order to be used
|
6 |
|
|
# from the terminal."
|
7 |
d52a5b2f
|
jenselme
|
|
8 |
|
|
# Check if scripts-utils.sh is imported.
|
9 |
3e9236bd
|
Julien Enselme
|
if [ -z "${scripts_utils}" ] ; then
|
10 |
d52a5b2f
|
jenselme
|
echo "Import of scripts-utils.sh required."
|
11 |
|
|
. scripts-utils.sh
|
12 |
|
|
fi
|
13 |
|
|
|
14 |
3e9236bd
|
Julien Enselme
|
check_arguments "$#" 1 "$help"
|
15 |
d52a5b2f
|
jenselme
|
|
16 |
3e9236bd
|
Julien Enselme
|
# Must not be quoted to avoid problem with ((…))
|
17 |
683f57f9
|
Julien Enselme
|
backups_number=$(ls | wc -l)
|
18 |
d3851757
|
Julien Enselme
|
number_of_backups_to_delete=$((backups_number - $1))
|
19 |
d52a5b2f
|
jenselme
|
|
20 |
3e9236bd
|
Julien Enselme
|
if [ "${number_of_backups_to_delete}" -gt 0 ] ; then
|
21 |
|
|
ls | head "-${number_of_backups_to_delete}" | xargs rm
|
22 |
d52a5b2f
|
jenselme
|
else
|
23 |
3a1ab9d3
|
Julien Enselme
|
if [ -n "$2" ] ; then
|
24 |
8550e097
|
Julien Enselme
|
dir=$(pwd)
|
25 |
3e9236bd
|
Julien Enselme
|
echo "There are not enough files in $dir to Flush it. Check if backup script works fine." | mail -s "[db] $dir has a backup problem" "$2"
|
26 |
d52a5b2f
|
jenselme
|
fi
|
27 |
|
|
fi |