J’ai fait mon CV et une lettre de motivation type en latex, vu la réutilisabilité j’ai voulu un peu automatiser la compilation grace à make, comme il peut être source d’inspiration à n’importe qui je le donne.
#############
# Makefile #
# Date : 09/01/08 #
#############
# Améliore la portabilité du makefile (sans être nécéssaire avec GNU Make)
SHELL = /bin/sh
# Redéfinition des suffixes pour pouvoir utiliser les rêgles implicites
SUFFIXES = .tex .dvi .pdf
.SUFFIXES: $(SUFFIXES) .
PDFLATEX = pdflatex -interaction=batchmode
LATEX = latex -interaction=batchmode
# Définitions des commandes de compilation
COMPILER_PDF = $(PDFLATEX) $<
COMPILER_DVI = $(LATEX) $<
# Permet de générer les deux pdf ou dvi en une seule commande
pdf : motivation.pdf CV.pdf
dvi : motivation.dvi CV.dvi
# rêgles implicites les fichiers du type *.tex sont les dépendances
# et *.pdf sont les cibles
.tex.pdf :
$(COMPILER_PDF)
# voir plus haut
.tex.dvi :
$(COMPILER_DVI)
# Netoyage des fichiers annexes
clean :
@rm -v *.aux *.log *~
purge : clean
@rm -i *.dvi *.pdf[/code]
Et pour compiler :
[code]$ make dvi # pour générer deux fichiers dvi
$ make pdf # pour générer deux fichiers pdf
$ make clean # supprime les fichiers annexes
$ make purge # supprime les fichiers annexes et les fichiers de sortie
[Edit : J’ai ajouté l’usage de rêgles implicites, la portabilité et des commentaires]
Si vous n’avez ni gnome ni kde, vous n’avez peut etre pas de verrouillage d’écran au moment de rebooter votre pc précedemment hiberné. Voici un moyen, parmi beaucoup d’autres, d’y remédier.
Tout d’abord il vous faut xlockmore et acpitool, xlockmore est actuellement indisponible sous etch mais vous pouvez le trouver ici tout pret : cure.nom.fr/blog/archives/14 … -etch.html .
Une fois le paquet installé, utilisez le script suivant :
#!/bin/sh
su <votre nom d'utilisateur> -c "xlock -mode blank &"
sleep 2
acpitool -S
Il vous suffit de lancer ce script en root. En espérant que ca puisse en aider quelques uns
Sur geckozone.org j’ai eu vent de SpreadFox Japan. Jusque là rien d’interessant, mais ça va suivre.
Ils ont une mascotte très jolies et chaque moi ils édites un wallpaper avec dessus un p’tit calendrier.
Moi ze suis un tête en l’aire donc je me suis dit que ce serait bien de scripter ça pour que chaque moi il me télécharge le dernier fond d’écran (c’est du python pour deux raisons : on a pas encore de scripts python ici et je veux maitriser un peu plus ce langage).
#!/usr/bin/python
# -!- coding: utf-8 -!-
import os, os.path
import urllib, sys
import time
import datetime
if 2 == len(sys.argv) and sys.argv[1] == '--help' :
print os.path.basename(sys.argv[0]) + " renvoie 0 en cas de succes et 1 au cas où le wallpaper est déjà téléchargé."
sys.exit(0)
os.chdir(os.getenv('HOME') + '/.wallpaper/firefox')
today = datetime.date.today()
file = today.strftime("%Y-%m") + '.png'
if not os.path.isfile ('./' + file) :
sys.exit(1)
url = 'http://www.foxkeh.com/downloads/wallpapers/' + today.strftime('%Y%m') + '/1280-1024-c.png'
urllib.urlretrieve(url, file)
os.system ('/usr/bin/gconftool-2 -s /desktop/gnome/background/picture_filename -t string ' + os.getcwd() + '/' + file)
sys.exit(0)
puis
0 20 4 * * /home/haha/bin/wall.py
La gestion de la ligne de commande est très basique mais je pense que ça suffit pour un script comme celui-ci. Peut être que j’y ajouterais des option pour choisir le type de wallpaper téléchargé.
Je ne crois pas que KDE par exemple utilise gconf et s’il l’utilise je doute qu’il ai un chemin content gnome. Je cherche un moyen d’être plus portable avec une API python qui lisserais le wm (comme pour le navigateur par défaut quoi).
yop bon je poste un petit bout de script qui m’arrange quand sa gèle (ce qui est rare), et donne la prioriter a ce que j’utilise vraiment, ce qui m’éviter de me faire ch*** a virer-activer/désactiver/ré-activer etc sans arret
bref un compromis que je place dans /etc/init.d
je place aux début un sleep (qui n’est pas dans ce code car pas indispensable) qui attent que tout les processus ce lance.
Je me suis inspirer de ce que fran.b m’avais proposer pour ré-affecter les sous-processus
car certin processus (père) change la valeur des (enfants)
Commentaire:
vous pouvez ajouté une re-direction pour les erreurs 2>/dev/null (1 pour les voire et pas le reste comme l’exemple)
Ci-dessous:provoque des erreurs car grep trouve pas toujours le nom (décalage de collonne avec awk)
ps aux
Je suis passer a
ps -T -C $N -o spid=
la variable N = [nom du processus] Placée ici de marnière volontaire, mai pas indispensable.
de même pour P pour la valeur du renice
Mon script plus haut ne fonctionne plus. Le site a changé ses url pour permettre d’avoir un calendrier qui commence le dimanche et un autre qui commence le lundi.
J’ai aussi fait une 'tite modife pour crée le rep s’il n’existe pas.
#!/usr/bin/python
# -!- coding: utf-8 -!-
import os, os.path
import urllib, sys
import time
import datetime
if 2 == len(sys.argv) and sys.argv[1] == '--help' :
print os.path.basename(sys.argv[0]) + " renvoie 0 en cas de succes et 1 au cas où le wallpaper est déjà téléchargé."
sys.exit(0)
rep = os.getenv('HOME') + '/.wallpaper/firefox'
if not os.path.isdir(rep):
os.makedirs(rep)
os.chdir(rep)
today = datetime.date.today()
file = today.strftime("%Y-%m") + '.png'
if os.path.isfile ('./' + file) :
sys.exit(1)
url = 'http://www.foxkeh.com/downloads/wallpapers/' + today.strftime('%Y%m') + '/1280x1024_cal_en_mon.png'
urllib.urlretrieve(url, file)
os.system ('/usr/bin/gconftool-2 -s /desktop/gnome/background/picture_filename -t string ' + os.getcwd() + '/' + file)
sys.exit(0)
Salut à tous!
Je vous propose un script sans prétention, mais efficace ^^ que j’ai fait pour rsyncer mon site vers mon disque dur.
Il utilise donc rsync et ssh pour le protocole de communication.
#!/bin/sh
RSYNC_OPTIONS='-av'
REMOTE_SHELL='ssh -p 22'
USER='username'
HOST='host.com'
SRC=${USER}@${HOST}':/home/votre_site_là_bas/www/'
DEST='/media/votre/disque/ici/www/'
############################
# Rsync Distant vers local #
############################
rsync ${RSYNC_OPTIONS} --rsh="${REMOTE_SHELL}" ${SRC} ${DEST}
############################
# Rsync Local vers distant #
############################
# Vous pouvez bien entendu inverser le sens du script pour
#+rsyncer depuis votre disque local vers le serveur distant
#+(Swapper $DEST et $SRC ferait plus propre)
# rsync ${RSYNC_OPTIONS} ${DEST} --rsh="${REMOTE_SHELL}" ${SRC}
exit 0
Nommez-le, puis chmod +x script
et voilà!
EDIT relatif au post suivant: #!/bin/bash => #!/bin/sh
Merci à MisterFreez pour la précision =)
Ajoutes-y une gestion incrémentale afin d’éviter toute surprise !
J’avais posté un script python (dans cette rubrique) pour le backup où je gère justement cela.
Le fichier des rêgles est dans /etc, je ne suis pas sur que ce soit sa place mais bon. J’interdit sa lecture à fin que d’autres utilisateurs ne voient pas d’éventuelles erreur sur les rêgles (oui je suis sur une machine avec personne d’autres dessus mais je préfère prendre de bonnes habitudes).
Je dois avouer que je n’ai jamais utilisé NuFw ou d’équivalent car je n’en ai pas encore eu le besoin et le temps. Cependant je sais que pf gère les authentification avec authpf, mais cela semble assez loin de ce que NuFw sait faire…
Les différences sont expliquées sur la page: http://www.nufw.org/Foire-Aux-Questions.html
J’ai eu besoin de connaître la liste des adresses IP de mon réseau local ce soir pour trouver l’adresse IP du nouveau routeur. Je me suis donc fais un petit scaneur de réseau en perl.
#!/usr/bin/perl
use strict;
use Net::Ping;
$|++;
print "Scan de ordinateurs :\n";
my $nb = 0;
my $ping = Net::Ping->new("icmp", 0.3);
foreach my $i ( 1 .. 254 ){
if ($ping->ping("192.168.1.".$i)){
++$nb;
print "192.168.1.$i\n";
}else{
print '.';
}
}
$ping->close();
print "Il y a $nb ordinateurs sur le réseau local.\n";