J'essaie de créer un script de sauvegarde à mesure que les fichiers journaux deviennent de plus en plus gros. Ce que j'ai, c'est de copier le fichier actuel (par exemple, secure
fichier dans /var/log/
) et de supprimer le contenu de ce fichier. Mais il y a des fichiers avec le nom comme: secure.1
, secure.2
et tout cela , je tiens à les compter, et si le nombre est plus grand que 2
pour les archiver tous. Je ne trouve pas la méthode pour trouver ces fichiers ou les compter. La première pensée qui m'est venue a été:
find /var/log/ -name *.1 | wc -l
et cela s'imprimera toujours 1
car il n'y a qu'un seul fichier secure.1
. Comment puis-je compter comme dans la boucle où je peux spécifier une plage de nombres comme {1..5}
ou similaire. Existe-t-il un moyen de séparer ces fichiers et de les faire comme un seul et de les sauvegarder ou de les supprimer ou quoi que ce soit ... ou tout d'abord comment puis-je trouver tous ces numéros qui se terminent par un numéro.
logrotate
votre objectif.
find /var/log/ -name '*.1' ...