Auteur:


Date:
29/03/2010

Catégories:
Open-source
Systeme

Tags:






Pense-bête: lignes de commandes

Voici un nouvel article que je vais faire évoluer dans le temps au fil de mes découvertes. Le but est d'y centraliser (avec un classement par thème) les lignes de commandes Unix utiles et que j'ai toujours beaucoup de mal à retenir (c'est l'âge mon bon monsieur).

Lecteurs, vous êtes libre d'enrichir cette base avec vos commentaires.

Fichiers & répertoires

Affiche la taille d'un répertoire en octets.

Syntaxe:

Exemple:

Système

Ajoute un dépôt PPA sous Ubuntu (9.04 ou supérieur).

Syntaxe:

Exemple:

Réseau

Affiche les informations sur sa carte réseau.

Syntaxe:

Exemple:

Affiche son adresse IP publique.

Syntaxe:

Exemple:

Affiche les ports réseau en écoute sur sa machine.

Syntaxe:

Exemple:

Tester sa connectivité réseau de bout en bout avec mtr (ping+traceroute).

Syntaxe:

Exemple:

Audio/video

Encoder un VOB DVD vers un OGG Theora en qualité correcte.

Syntaxe:

Exemple:

'

A vous de sheller...

8 commentaires/références

    On parle de ce billet (ping back):

    Commentaires (de mes chers lecteurs):


  1. Jojo, le 29/03/2010 (#7830)

    Bon, un peu bourrin, mais voici la mienne :]

    # Utilisation de TcpDump
    tcpdump -i eth0 -n -s 1500 -w Capture.pcap udp port 5060

    # Mappage de port
    iptables -t nat -A PREROUTING -p tcp –dport 3389 -j DNAT –to 10.1.0.17
    # Suppression
    iptables -t nat -D PREROUTING -p tcp –dport 3389 -j DNAT –to 10.1.0.17

    # Corriger le souci de :
    # W: GPG error: http://www.ultramonkey.org sarge Release: Les signatures suivantes n’ont
    # pas pu être vérifiées car la clé publique n’est pas disponible :
    # NO_PUBKEY 03C0023E05410E97
    ClePowa=03C0023E05410E97 && gpg –keyserver pgpkeys.mit.edu –recv-key $ClePowa && gpg -a –export $ClePowa | apt-key add -

    # Faire de la place barbarement sur les Alix
    rm -r /usr/share/man/*
    rm -r /usr/share/doc/*
    rm -rf /var/lib/apt/lists/security*
    rm -rf /var/lib/apt/lists/debian*
    rm -f /var/cache/apt/pkgcache.bin /var/cache/apt/srcpkgcache.bin
    rm -f /var/lib/dpkg/available-old /var/lib/dpkg/status-old
    rm -f /var/cache/debconf/config.dat-old /var/cache/debconf/templates.dat-old
    apt-get clean > /dev/null
    find /var/lib/apt/lists -type f \( -name “*Packages*” -o -name “*Sources*” -o -name “*Release*” \) -exec rm -f ‘{}’ ‘;’ 2>/dev/null
    dpkg –clear-avail > /dev/null
    rm -f /var/cache/apt/*.bin > /dev/null
    apt-cache gencaches > /dev/null
    find /usr/share/locale -name “*.mo” -exec rm ‘{}’ ‘;’ 2>/dev/null
    find /usr/share/ -name “*.info.gz” -exec rm ‘{}’ ‘;’ 2>/dev/null
    find /usr/share/locale -path ‘*/en’ -mindepth 1 -maxdepth 2 -prune -o -print -exec rm -rf ‘{}’ ‘;’ 2>/dev/null >/dev/null
    rm -f /var/lib/dpkg/info/*.md5sums
    rm -f /boot/*.bmp
    mkdir /usr/share/man/man5
    mkdir /usr/share/man/man8
    mkdir /usr/share/man/man1

    # Afficher l’IP publique
    curl ip.appspot.com

    # tout mettre a jour
    aptitude update && aptitude update && aptitude safe-upgrade –without-recommends -y && aptitude full-upgrade –without-recommends -y && aptitude safe-upgrade –without-recommends -y && aptitude full-upgrade –without-recommends -y && aptitude purge deborphan -y && aptitude purge dpkg -l | grep -v ii | awk '{ print $2 }' | sed '1,5d' | tr -s '\n ' ' ' -y && aptitude clean && aptitude autoclean

    # supprimer les paquets casses et les dependances non utilisees :
    aptitude purge deborphan && aptitude purge dpkg -l | grep -v ii | awk '{ print $2 }' | sed '1,5d' | tr -s '\n ' ' '

    # Tester la non-existence d’un fichier/repertoire
    if [ ! -f /etc/squid3/users/g_list2 ]
    then
    echo “Merci de creer le fichier /etc/squid3/users/g_list”
    exit 3
    fi

    # Trier et ne prendre qu’une seule occurence
    uniq | sort | uniq

    # trouver le nombre de slot memoire disponible
    dmidecode | grep -i “size”

    # Afficher la liste des processeurs
    sed -n ‘s/^model name[ \t]*: *//p’ /proc/cpuinfo

    # supprimer des lignes vides
    sed -i ‘/^$/d’ FICHIER

    # supprimer la 1ere ligne d’un fichier
    sed -i ’1d’ FICHIER

    # remplacer une chaine de caractere par une autre
    sed -i ‘s/ChaineRemplacer/NouvelleChaine/g’ FICHIER

    # parser un csv
    exec /tmp/pouet <pouet
    less pouet

    # tuer plusieurs process ayant le m뮥 nom
    killall NomProcess
    # ou
    Process=PROCESSaLAmano ; for cayapowa in ps -edf | grep $Process | awk '{ print $2 }' ; do kill -9 $cayapowa ; done

    Alt + ImprEcr + R (Raw) : les codes “brutes” ds touches seront transmis (pas de translation)
    Alt + ImprEcr + S (Sync) : vide le cache disque
    Alt + ImprEcr + U (Unmount) : demonte et remonte en lecture seule
    Alt + ImprEcr + E (tErm) : envoie le signal SIGTERM
    Alt + ImprEcr + I (kIll) : envoie le signal SIGKILL
    Alt + ImprEcr + B (reBoot) : redemarre le systeme

    # forcer un fsck
    touch /forcefsck

    # Interdire un fsck au reboot
    touch /fastboot

    # variable de variable
    eval MaVariableTordue=\$toto_$titi

    # Reconstruire l’index d’une boite mail
    su – cyrus -c ‘/usr/sbin/cyrreconstruct user/postmaster/Sent@billingfrance.net’

    # Changer TOUS les serials des zones dns
    for i in ls ; do cat $i | sed -e ‘s/.*[0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9].*/\t\t\t\t2010012001\t\;\ Serial/’ $i > $i.done && mv $i.done $i; done

    # Renomme en masse : (vire le db. des noms de fichiers en dꣵt)
    for i in ls db.* ; do mv $i echo $i | sed -e 's/db\.//' ; done

    # Reload des zones en masse
    for i in ls ; do rndc reload $i ; done

    # Retourner le nom d’un fichier debarasse son path
    basename /sbin/ifconfig

    # Retourner le path d’un fichier sans le nom du fichier
    dirname /sbin/ifconfig

    # Envoyer un mail en bash avec un fichier joint
    cat /tmp/RapportSave.txt | mail -s “Rapport de Sauvegarde Mail” grabouin@neocom.fr

    # Liste des arguments
    echo $*

    # Nombre d’arguments
    echo $#

    # Si utilisation d’un nombre d’argument trop grand (>10)
    echo ${10}

    # Configuration de ssmtp
    cat > /etc/ssmtp/ssmtp.conf << EOF
    mailhub=smtp.neocom.fr:25
    hostname=neocom.fr
    UseTLS=YES
    FromLineOverride=YES
    AuthUser=nagios@neonoc.fr
    AuthPass=t6yfdlr2SSQ
    EOF

    # Tester la longueur d'une variable $toto
    if [ ${#toto} -ne 9 ]
    then
    echo toto ne fait pas 9 caractères
    fi

    # Tester la validité d'une zone dns
    for i in ls ; do named-checkzone $i $i | grep -v OK | grep -v ^zone ; done


  2. AP, le 29/03/2010 (#7831)

    A vous de sheller ? Ok.
    http://www.universheller.net/


  3. fondere, le 29/03/2010 (#7833)

    Oh ouizzzz !

    +1


  4. adrien, le 29/03/2010 (#7834)

    Pour créer des miniatures d’un lot d’images JPEG en conservant les proportions (même en cas de différence d’orientation) :

    for fichier in /repertoire/source/*.JPG ; do convert -geometry 120×100 -quality 60 $fichier /repertoire/destination/basename $fichier ; done


  5. mydjey, le 29/03/2010 (#7835)

  6. linker, le 30/03/2010 (#7843)

    Article très pratique, un grand merci.


  7. Guizmo.7, le 30/03/2010 (#7845)

    J’aime notamment le http://www.commandlinefu.com/commands/view/209/check-command-history-but-avoid-running-it.
    Je crois que c’est une fonctionnalité de Bash mais c’est très pratique quand même pour ne pas taper plein de fois de suite sur la flèche du haut pour rappeler une ancienne commande.


Vous avez un compte Twitter ?

Cliquer sur le bouton ci-dessous pour vous enregistrer sur le blog en l'utilisant.

Laisser un message

Les informations saisies resteront privées