Shell script
snmelka
Messages postés
73
Statut
Membre
-
snmelka Messages postés 73 Statut Membre -
snmelka Messages postés 73 Statut Membre -
Bonjour,
Je suis débutante sur linux, aujourd'hui je cherche comment faire un scripte?
J'ai un repertoir de partage contenant des dossiers utilisateurs sans la notion de quota, je dois écrire un script qui sera lancé tous les 15jrs, qui fera un calcul d'espace utilisé par chaque utilisateur, le résultat de cet espace sera mis dans un fichier et envoyé à l'administrateur, sauf que je ne sais pas comment le construire! j'ai commencé à écrire l'idée, mais je ne sais pas en fait comment créer le premier fichier puis faire la comparaison avec celui qui sera créé 15jrs après pui faire un fichier résultat à envoyer.
Merci de votre aide,
Je suis débutante sur linux, aujourd'hui je cherche comment faire un scripte?
J'ai un repertoir de partage contenant des dossiers utilisateurs sans la notion de quota, je dois écrire un script qui sera lancé tous les 15jrs, qui fera un calcul d'espace utilisé par chaque utilisateur, le résultat de cet espace sera mis dans un fichier et envoyé à l'administrateur, sauf que je ne sais pas comment le construire! j'ai commencé à écrire l'idée, mais je ne sais pas en fait comment créer le premier fichier puis faire la comparaison avec celui qui sera créé 15jrs après pui faire un fichier résultat à envoyer.
Merci de votre aide,
A voir également:
- Shell script
- Classic shell - Télécharger - Personnalisation
- Script vidéo youtube - Guide
- Ghost script - Télécharger - Polices de caractères
- Mas script - Accueil - Windows
- Script cmd - Guide
2 réponses
J'opterais pour un scrip du genre:
Puis faire un pipe vers awk pour additionner les nombres de blocs utilisés
man stat
Il faudra aussi veiller aux hard lins sur ls système de fichiers exploré, s'il échet....
Tu peux ajouter une option -uid id_utilisateur à find
ou faire apparaître l'id avec stat...
Johan
johand@horus:~/src$ find . -xdev -type f -print0 | xargs --null stat -c "%n %b %B"| head -20 ./python/mail2images.py 8 512 ./python/renumber.py 8 512 ./python/renumber-lome.py 8 512 ./python/brol/__init__.py 8 512 ./python/brol/__init__.pyc 8 512 ./python/brol/__init__.pyo 8 512 ./python/testbrol.py 8 512 ./python/teststruct.py 8 512 ./python/data 8 512 ./python/pgsql/basic.py 16 512 ./python/pgsql/demo1a.py 8 512 ./python/pgsql/demo1b.py 8 512 ./python/pgsql/demo2a.py 8 512 ./python/pgsql/demo2b.py 8 512 ./python/pgsql/demo.pdf 24 512 ./python/lutz/dbase/browse.py 8 512 ./python/lutz/dbase/dumpcast.py 8 512 ./python/lutz/dbase/formgui.py 16 512 ./python/lutz/dbase/formtbl.py 8 512 ./python/lutz/dbase/formtbl2.py 8 512
Puis faire un pipe vers awk pour additionner les nombres de blocs utilisés
man stat
Il faudra aussi veiller aux hard lins sur ls système de fichiers exploré, s'il échet....
Tu peux ajouter une option -uid id_utilisateur à find
ou faire apparaître l'id avec stat...
Johan
Je viens de réaliser qlq chose en m'appuyant sur les cours shell et les exos corrigés,voilà ce que ca donne,
quelqu'un peut-il me le corriger?,
Merci à vous
#!/bin/sh
cd /repertoires/utilisateurs/
echo rapport_users >> message.txt
if [ -f "$1.txt.n ]
mv $1.txt $1.txt.1
n=1
while [ -f "$1.txt.n" ]
do
n=`expr $n + 1`
done
if [ -f "$1.txt.n" ]
then
mv "$1.txt.n" "$1.txt.n-1"
for i in *
do
if [ -d "$i" ]
then
`du -sm $i` >> stat.txt.n
sort -k 2 -u stat.txt.n >> /var/tmp/statn.txt
sort -k 2 -u stat.txt.n-1 >> /var/tmp/statn-1.txt
join -j 2 -a 1 /var/tmp/statn.txt /var/tmp/statn-1.txt >> message.txt | message $admin@mydomaine.com
exit
Je souhaite également envoyé ce rapport avec un sujet, corps du message, et les statistiques.
Merci