• STATISTIQUES
  • Il y a eu un total de 0 membres et 44708 visiteurs sur le site dans les dernières 24h pour un total de 44 708 personnes!
    Membres: 2 605
    Discussions: 3 579
    Messages: 32 816
    Tutoriels: 78
    Téléchargements: 38
    Sites dans l'annuaire: 58


  • ANNUAIRE
  • [EN] Astalavista
    JavaScript: 1, Exploit: 2, Crypto: 34, CrackIt: 15, Stegano: 8, Programming: 12, Logic: 36, Special: 6, Science: 4, Info...
    Challenges
    [FR] WeChall
    Audio: 3, Coding: 11, Cracking: 9, Crypto: 18, Encoding: 11, Exploit: 44, Forensics: 1, Fun: 6, HTTP: 6, Image: 8, Java:...
    Challenges
    [FR] Comment ca marche
     Gratuit et accessible à tous, ce site de communauté permet de se dépanner, se faire aider ...
    Webmaster
    [EN] HackQuest
    Logic: 12, JavaScript: 14, Applet: 6, CrackIt: 13, Crypto: 11, Internet: 3, Exploit: 7, Stegano: 12, Flash: 1, Programmi...
    Challenges
    [EN] hax.tor
    50 level de challenges mélangés
    Challenges
    [EN] This is legal
    Basic: 10, Realistic: 5, Programming: 1, Bonus: 11, SQL: 2, Encryption: 6, Application: 4, User Contributed: 3
    Challenges
    [EN] Security Traps
    Site de challenge qui prétend être construit non pas dans le but de parfaire vos connaissances, mais plutôt dan...
    Challenges

  • 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,609
Sujets : 71
Points: 465
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: 203
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 103 02-05-2015, 13h42
Dernier message: Dobry
Information Sauter une partition lors du update-grub avec grub 2 Encrypt 0 110 28-08-2014, 23h22
Dernier message: Encrypt
  Morpion en bash notfound 8 519 05-12-2013, 21h00
Dernier message: notfound
  [BASH] Mouchard au démarrage thxer 3 332 20-11-2013, 13h28
Dernier message: EpicOut
  [BASH] Listing Alias utiles thxer 3 229 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