Commandes utiles
De GioWiki.
pour
Commandes utiles
Aller à :
Navigation
,
rechercher
== Afficher le contenu d'un fichier sans les commentaires == La commande suivante permet de retirer les lignes précédées d'un # ou ; ainsi que les lignes vides pour pouvoir afficher uniquement le contenu intéressant. '''grep -vE "^\s*[#;]|^$" fichier.conf''' == rsync d'un répertoire local sur une machine distante == L'objectif est de synchroniser un répertoire en local sur un serveur distant avec rsync over ssh. '''rsync -avz /chemin/local/ -e 'ssh -p XXX -l login' adresse_machine_distante:/chemin/distant/''' Avec suppression des fichiers qui n'existent plus et avec création d'un fichier de logs pour archiver les actions effectuées par le script : #!/bin/bash echo "############################################################" >> rsync_rep.log # Séparateur pour le log date >> rsync_rep.log # On met la date dans le log rsync -avz --delete /chemin/local/ -e 'ssh -p XXX -l login' adresse.machine.distante:/chemin/distant/ >> rsync_rep.log Vous pouvez rajouter l'option -C qui permet d'exclure les répertoires des gestionnaires de version (.svn, .git) et les fichiers binaires et de backup des éditeurs de textes. Pour exclure un répertoire, il faut utiliser la commande --exclude '.svn' == Benchmark d'un disque dur == '''hdparm -tT /dev/sda''' /dev/sda: Timing cached reads: 1104 MB in 2.00 seconds = 552.24 MB/sec Timing buffered disk reads: 184 MB in 3.03 seconds = 60.78 MB/sec == Copie de fichiers over ssh avec compression == Plutôt que de copier nos 40Go sur le réseau, on compresse l'image à la volée et en plus on gère les fichiers sparse. tar -cvzSf - mon_image.img |ssh server "(cd /mnt/backup && tar -xvzSf -)" == Manipuler les chaînes de caractères (bash) == ${chaine:position:longueur} * Retirer les 3 premiers caractères d'une chaîne ${i:3} * Retirer les 3 derniers caractères d'une chaîne ${i::${#i}-3} ${#i} permet d'obtenir la longueur de la chaîne * Récupérer les 3 premiers caractères d'une chaîne ${i::3} * Récupérer les 3 derniers caractères d'une chaîne ${i: -3} Pour plus d'informations : [http://abs.traduc.org/abs-5.3-fr/ch09s02.html Manipuler les chaînes de caractères] * Uppercase Utilisation du caractère ^ <pre> $ string="a few words" $ echo ${string^} A few words $ echo ${string^^} A FEW WORDS $ echo ${string^^[aeiou]} A fEw wOrds </pre> * Lowercase Utilisation du caractère , <pre> $ string="A FEW WORDS" $ echo ${string,} a FEW WORDS $ echo ${string,,} a few words $ echo ${string,,[AEIOU]} a FeW WoRDS </pre> * Toggle Utilisation du caractère ~ ~ Inverse (Upper/Lower) uniquement sur le premier caractère de chaque mots ~~ Inverse (Upper/Lower) sur tous les caractères de tous les mots <pre> $ string="A Few Words" $ echo ${string~~} a fEW wORDS $ string="A FEW WORDS" $ echo ${string~} a fEW wORDS $ string="a few words" $ echo ${string~} A Few Words </pre> * Title case $ string="a few words" On transforme notre variable en tableau pour pouvoir traiter chacun des mots $ string=($string) On uppercase chacun des premiers caractères de chaque mots $ string=${string[@]^} $ echo $string A Few Words == Additionner le contenu des lignes d'un fichier == Imaginons un fichier qui contient un numéro à chaque ligne et que vous souhaitez obtenir le résultat de l'ensemble de ces nombres. Il suffit d'exécuter la commande suivante : paste -sd+ <file> | bc
Revenir à la page
Commandes utiles
.
Affichages
Page
Discussion
Voir le texte source
Historique
Outils personnels
Connexion
Navigation
Accueil
Communauté
Actualités
Modifications récentes
Page au hasard
Aide
Rechercher
Boîte à outils
Pages liées
Suivi des pages liées
Pages spéciales