• STATISTIQUES
  • Il y a eu un total de 1 membres et 5687 visiteurs sur le site dans les dernières 24h pour un total de 5 688 personnes!


    Membres: 2 446
    Discussions: 3 572
    Messages: 32 822
    Tutoriels: 77
    Téléchargements: 38
    Sites dans l'annuaire: 58


  • ANNUAIRE
  • [EN] Listbrain Version 3
    Site proposant 66 challenges présentés dans une liste mélangée.
    Challenges
    [EN] Big-Daddy
    Big-Daddy est site internet communautaire avec un effectif diversifié, y compris des artistes, des programmeur...
    Hacking
    [FR] Developpez.net
    Un forum communautaire qui se veut pour les développeurs en générale. Avec presque 500 000 membr...
    Programmation
    [EN] Reddit
    Subreddit dédié à la sécurité informatique.
    Hacking
    [FR] InfoMirmo
    Apprentissage de l'informatique par l'intermédiaire de challenges de sécurité. Venez app...
    Hacking
    [EN] w3challs
    Ce site propose différents types de défis informatiques: piratage, craquage, cryptographie, stég...
    Hacking
    [EN] Defcon
    Lancé en 1992 par Dark Tangent, DEFCON est la plus ancienne et la plus grande conférence underground de...
    Hacking

  • DONATION
  • Si vous avez trouvé ce site internet utile, nous vous invitons à nous faire un don du montant de votre choix via Paypal. Ce don servira à financer notre hébergement.

    MERCI!




Note de ce sujet :
  • Moyenne : 0 (0 vote(s))
  • 1
  • 2
  • 3
  • 4
  • 5
Utiliser inotify avec bash
15-09-2014, 19h17
Message : #1
supersnail Hors ligne
Éleveur d'ornithorynques
*******



Messages : 1,617
Sujets : 73
Points: 467
Inscription : Jan 2012
Utiliser inotify avec bash
Bonjour à tous !

Ayant une collection de wallpapers assez "grande" dans un dossier dédié, et utilisant Gnome 3 (qui ne voit pas les fonds d'écran en-dehors du dossier ~/Images, et ne permettant pas de set son répertoire de wallpapers soi-même), j'ai décidé de créer un petit script bash qui surveillerait cette collection et qui regénérerait le xml permettant à gnome de lister mes wallpapers de ce répertoire afin de prendre en compte mes nouveaux wallpapers.

J'ai donc pu faire connaissance avec "inotifywatch", une commande bien sympathique qui permet de surveiller un ou plusieurs répertoires et de balancer une ligne sur stdout à chaque changement qui a lieu sur le(s) répertoire(s) surveillé(s), ce qui le rend fort utile couplé à un while.
Cette commande se trouve dans inotify-tools (du moins sur archlinux Big Grin), et je vous laisse vous référer à la manpage pour plus d'infos Wink

Donc sans plus attendre, le petit script que je me suis concocté (sûrement perfectible n'étant pas expert en bash, cc Notfound Wink):

Code BASH :
#!/bin/bash

make_header () {
cat << EOF > ~/.local/share/gnome-background-properties/$WALLPAPER_FILE
<!DOCTYPE wallpapers SYSTEM "gnome-wp-list.dtd">
<wallpapers>
EOF
}

make_entry () {
name=$(basename $1)
cat << EOF >> ~/.local/share/gnome-background-properties/$WALLPAPER_FILE
    <wallpaper>
        <name>${name%.*}</name>
        <options>stretched</options>
        <filename>$1</filename>
        <shade_type>solid</shade_type>
    </wallpaper>
EOF
}

make_final () {
cat << EOF >> ~/.local/share/gnome-background-properties/$WALLPAPER_FILE
</wallpapers>
EOF
}
WALLPAPERS_DIR=~/Wallpapers
WALLPAPER_FILE="my-wallpapers.xml"
inotifywait -m -e create,delete,moved_from,moved_to $WALLPAPERS_DIR | while read i; do
    make_header
    for j in $(find $WALLPAPERS_DIR -name *.jpg -or -name *.png -or -name *.jpeg); do
        make_entry $j
    done
    make_final
done
 
Mon blog

Code :
push esp ; dec eax ; inc ebp ; and [edi+0x41],al ; dec ebp ; inc ebp

"VIM est merveilleux" © supersnail
+1 (5) -1 (0) Répondre
18-09-2014, 11h37
Message : #2
Junky Hors ligne
Snorky Master
*



Messages : 228
Sujets : 35
Points: 204
Inscription : Mar 2013
RE: Utiliser inotify avec bash
Bonjour,

Ouais c'est vraiment sympa. A l'époque je mettais fait un script justement avec. Le but était de ban les IP qui faisaient une requête "w00tw00t" sur mon serveur web

Code BASH :

#!/bin/bash

#    Silentd:
#        Ban des w00tw00t fou!!
#
#    Prérequis:
#        Avoir installé le package inotify-tools
#        se reporter ici: http://linux.die.net/man/1/inotifywait
#    Création:
#        19 mars 2013

matchword="w00tw00t.at.ISC.SANS.DFind"
guardfile="/var/log/nginx/access.log"

if [ -f $guardfile ]; then
        while inotifywait -e modify $guardfile; do
                if tail -n1 $guardfile | grep $matchword ; then
            IP=$(tail -n1 $guardfile | cut -d" " -f1)
            iptables -A INPUT -s $IP -j DROP
                fi
        done
fi
 


source en couleur

Junky,
Pour la sécurité, sous linux, le principal soucis est l'interface chaise/clavier

+1 (1) -1 (0) Répondre


Sujets apparemment similaires…
Sujet Auteur Réponses Affichages Dernier message
  Utiliser un serveur X dans un chroot grâce à Xephyr Dobry 0 1,574 02-05-2015, 13h42
Dernier message: Dobry
Information Sauter une partition lors du update-grub avec grub 2 Encrypt 0 1,486 28-08-2014, 23h22
Dernier message: Encrypt
  Morpion en bash notfound 8 4,853 05-12-2013, 21h00
Dernier message: notfound
  [BASH] Mouchard au démarrage thxer 3 2,875 20-11-2013, 13h28
Dernier message: EpicOut
  [BASH] Listing Alias utiles thxer 3 2,642 25-05-2013, 22h27
Dernier message: thxer

Atteindre :


Utilisateur(s) parcourant ce sujet : 1 visiteur(s)
N-PN
Accueil | Challenges | Tutoriels | Téléchargements | Forum | Retourner en haut