• STATISTIQUES
  • Il y a eu un total de 2 membres et 13145 visiteurs sur le site dans les dernières 24h pour un total de 13 147 personnes!


    Membres: 2 433
    Discussions: 3 585
    Messages: 32 832
    Tutoriels: 78
    Téléchargements: 38
    Sites dans l'annuaire: 58


  • ANNUAIRE
  • [FR] NewbieContest
    Nous vous proposons une série de challenges regroupant plusieurs domaines allant de l'exploitation de fail...
    Hacking
    [EN] Listbrain Version 3
    Site proposant 66 challenges présentés dans une liste mélangée.
    Challenges
    [EN] Reddit
    Subreddit dédié à la sécurité informatique.
    Hacking
    [FR] WeChall
    Audio: 3, Coding: 11, Cracking: 9, Crypto: 18, Encoding: 11, Exploit: 44, Forensics: 1, Fun: 6, HTTP: 6, Image: 8, Java:...
    Challenges
    [EN] Hack This Site
    Hack This Site est considéré comme un réel terrain d'entraînement légal pour le...
    Hacking
    [FR] Le top web
    Nous offrons une sélection la plus large possible de resources webmaster gratuites, hébergement gratuit...
    Webmaster
    [FR] dcode
    dcode.fr est le site indispensable pour décoder des messages, tricher aux jeux de lettres, résoudre des énigmes...
    Outils / Add-on

  • 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 En ligne
Éleveur d'ornithorynques
*******



Messages : 1,614
Sujets : 72
Points: 466
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 760 02-05-2015, 13h42
Dernier message: Dobry
Information Sauter une partition lors du update-grub avec grub 2 Encrypt 0 745 28-08-2014, 23h22
Dernier message: Encrypt
  Morpion en bash notfound 8 2,408 05-12-2013, 21h00
Dernier message: notfound
  [BASH] Mouchard au démarrage thxer 3 1,529 20-11-2013, 13h28
Dernier message: EpicOut
  [BASH] Listing Alias utiles thxer 3 1,240 25-05-2013, 22h27
Dernier message: thxer

Atteindre :


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