• man2pdf : convertir une page de manuel en PDF

    par wintermute le dimanche 18 novembre 2007 à 21:53:16

    Le script utilise la commande ps2pdf fournie par le paquet gs-common.


    #!/bin/bash
    #converti une page de manuel en pdf

    PAGE=$1

    man -t $PAGE > $HOME/$PAGE.ps
    ps2pdf $HOME/$PAGE.ps && rm -f $HOME/$PAGE.ps

    Par ailleurs il est possible de se passer du fichier postscript temporaire et de renvoyer la sortie standard vers ps2pdf.


    man -t $PAGE > | ps2pdf - ${PAGE}.pdf
  • Publier avec scp

    par wintermute le samedi 20 octobre 2007 à 20:00:50

    Un petit bout de code utile pour travailler sur des copies locales de documents et les publier rapidement.


    #! /bin/sh
    #
    #
    # pub.doc.sh
    # 15 octobre 2007 : v0.9
    # 15 octobre 2007 : v1.0 ajout d'options d'exécution

    SERVEUR=serveur.org
    UTILISATEUR=user
    #Répertoire où seront copiés les fichiers.
    # chemin relatif à /home/$UTILISATEUR
    # si $1 n'est pas fournie, REP_DEFAUT est initialisé avec une valeur
    #par défaut
    REP_DEFAUT="public_html/";

    REP_PUB=${1:-"$REP_DEFAUT"}
    shift # $2 devient $1 etc…

    while test $# -ne 0
    do
    SUM=$(basename $1).md5
    # étant donné le basename utilisé pour créer $SUM, il est
    # nécessaire d'exécuter pub.doc.sh dans le répertoire contenant les
    # fichier (cf. test suivant)

            # copie si [ $1 est un fichier ]
            #       ET [ la somme de contrôle existe ]
            #       ET la somme de contrôle ne concorde pas (! md5sum)
            if [ -f $1 ] && [ -f $SUM ] && ! md5sum --status -c ${SUM}
            then
                    echo "ssh copy ($SERVEUR):"
                    if scp $1 ${UTILISATEUR}@${SERVEUR}:${REP_PUB}
                    then
                            echo "fichier copié"
                            echo -e "mise à jour de la somme de contrôle de $1 \n"
                            #md5sum $1 > ${SUM}
                    else
                            echo -e "erreur scp, le fichier $1 n'a pas été copié\n"
                    fi
            else
                    echo "$1 non traité"
            fi
    shift
    done

    exit 0
  • genalea : générateur de nombres aléatoires

    par wintermute le lundi 08 octobre 2007 à 00:52:36
    #!/bin/bash

    num=0

    num=$(head -1 /dev/urandom | od -N 1 | awk '{ print $2 }')  

    echo $num
  • Quelle est mon adresse IP

    par wintermute le lundi 08 octobre 2007 à 00:40:17
    #!/usr/bin/env perl

    #Adresse IP
    my $ADR="";

    open(WGET, "wget -q -O - http://www.monip.org |") || die "Erreur d'exécution de wget: $! \n pour l'adresse $_";
    # utiliser les données reçues
    while (<WGET>) {
    if ( /(((25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[1-9]).){3}(25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[1-9]))/
    #if ( /\d{1,3}\./
    )
    {$ADR = $1;
    print $ADR;
    last;}
    print $_
    };

Page générée en 42ms

Révision 19.