Tags: bash

Sort by: Date / Title /

  1. 1 day ago by bobuse
    1. dcop --user $USER --session `dcop --user $USER --list-sessions | grep DCOP`  ksmserver ksmserver logout 0 0 0
  2. 2 weeks ago by spirit
    1. trap "/usr/bin/mycmd; exit 255" SIGINT SIGTERM
  3. 2 weeks ago by gameplayer and saved by 1 other
    Cette commande va effectuer le status sur tous les fichiers contenus dans $liste_file_to_update, ne récupère que les lignes commençant par M (fichiers modifiés), supprime les 9 premiers caractères (pour supprimer les caractères de statut affichés par svn status) et retire les espaces et caractères numériques restant au début de la ligne.
    1. svn status -u $liste_file_to_update | egrep '^M' | cut -c 9- | sed "s/[1-9 ][1-9 ]*\//\//g"
  4. 1 month ago by benoitbalon
    Ce petit script permet d'émuler une barre de progression et le pourcentage associé. La barre s'adapte automatiquement à la largeur du terminal. Pour l'exemple, le script boucle sur le nombre d'arguments qui lui sont passés en entrée. Le script fonctionne avec GNU-Linux et Solaris (cf. commande stty), pour d'autres OS il faudra les ajouter dans le script.
    1. #!/bin/sh
    2.  
    3. # ex :
    4. # ~$ test.sh 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
    5. # [||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||] 100.00%
    6.  
    7. barre_progression ()
    8. {
    9.         nb_iterations=$1
    10.         liste_length=$2
    11.         pourcent=`echo "scale=2;($nb_iterations * 100) / $liste_length" | bc`
    12.         pourcent=`printf "% 3.2f" "$pourcent"`
    13.        
    14.         chaine="$pourcent"
    15.         nb_etoiles=`echo "scale=0;$chaine / $diviseur_barre" | bc`
    16.         etoiles=""
    17.         while test $nb_etoiles -gt 0
    18.         do
    19.                 etoiles="${caractere_barre}${etoiles}"
    20.                 nb_etoiles=`echo "$nb_etoiles - 1" | bc`
    21.         done
    22.         etoiles=`printf "[%-${largeur_barre}s]" "$etoiles"`
    23.         pourcentage=`printf "%7s" "$chaine"`
    24.         #echo "\r${etoiles}${pourcentage}%\r\c"
    25.         printf "%b%b%b" "\r${etoiles}" "${pourcentage}" "%\r\c"
    26. }
    27.  
    28. # INITIALISATION DE LA BARRE DE PROGRESSION
    29. init_progress_bar ()
    30. {
    31.         # caractere qui sera affiche dans la barre de progression
    32.         caractere_barre="|"
    33.        
    34.         # detection de l'OS
    35.         os=`uname -s | tr [a-z] [A-Z]`
    36.        
    37.         # recuperation de la largeur en caracteres du terminal
    38.         if test "$os" = "LINUX"
    39.         then
    40.                 largeur_ecran=`stty -a | grep columns | cut -d ' ' -f7 | tr -d ';'`
    41.         elif test "$os" = "SUNOS"
    42.         then
    43.                 largeur_ecran=`stty | grep columns | cut -d ' ' -f6 | tr -d ';'`
    44.         else
    45.                 echo "Systeme d'exploitation incompatible, programme stoppe"
    46.                 exit 1
    47.         fi
    48.        
    49.         # calcul de la largeur optimale de la barre de progression
    50.         largeur_barre=`echo "$largeur_ecran - 7 - 2 - 1" | bc`
    51.         diviseur_barre=`echo "scale=2;100 / $largeur_barre" | bc`
    52.        
    53.         # protection des variables
    54.         readonly largeur_ecran largeur_barre diviseur_barre caractere_barre
    55. }
    56.  
    57. # gestion de la langue de l'environnement
    58. LC_NUMERIC=C
    59.  
    60. init_progress_bar
    61.  
    62. liste_length=$#
    63. nb_iterations=0
    64. if test $liste_length -gt 0
    65. then
    66.         for i in $@
    67.         do
    68.                 nb_iterations=`echo "$nb_iterations + 1" | bc`
    69.                 barre_progression "$nb_iterations" "$liste_length"
    70.                 # sleep 1
    71.         done
    72. fi
    73.  
    74. echo " "
  5. 3 months ago by benoitbalon
    Je sais, c'est moche, mais c'est en attendant de trouver mieux...
    1. for i in `ls -1`; do cd $i; rename 's/ +/_/g' *; cd ..; done
    2. for i in `ls -1`; do cd $i; rename "s/'/-/g" *; cd ..; done
    3. for i in `ls -1`; do cd $i; rename "s/[?!%]//g" *; cd ..; done
    4. for i in `ls -1`; do cd $i; rename "s/[?]//g" *; cd ..; done
    5. for i in `ls -1`; do cd $i; rename 's/[!%?]//g' *; cd ..; done
    6. for i in `ls -1`; do cd $i; rename 's/[àâ]/a/g' *; cd ..; done
    7. for i in `ls -1`; do cd $i; rename 's/[éèêë]/e/g' *; cd ..; done
    8. for i in `ls -1`; do cd $i; rename 's/[oöô]/o/g' *; cd ..; done
    9. for i in `ls -1`; do cd $i; rename 's/[ûù]/u/g' *; cd ..; done
    10. for i in `ls -1`; do cd $i; rename 's/[ä]/a/g' *; cd ..; done
    11. for i in `ls -1`; do cd $i; rename 's/[ü]/u/g' *; cd ..; done
    12. for i in `ls -1`; do cd $i; rename 's/[,]/-/g' *; cd ..; done
    13. for i in `ls -1`; do cd $i; rename 's/[(){}]/-/g' *; cd ..; done
    14. for i in `ls -1`; do cd $i; rename 's/traeve/treve/g' *; cd ..; done
  6. 3 months ago by cyo
    1. Crée un fichier 'sql.tar.gz' à partir de logs d’erreur 'sql-2008-03*' :
    2. tar cvfz sql.tar.gz sql-2008-03*
    3.  
    4. puis déplace le fichier dans le répertoire supérieur :
    5. mv sql.tar.gz ../
  7. 3 months ago by neorom
    1. fichier :  /etc/sysconfig/network-scripts/ifcfg-eth2
    2. configuration :
    3. DEVICE=eth2
    4. BOOTPROTO=static
    5. ONBOOT=yes
    6. HWADDR=00:1a:20:6a:d8:a4
    7. IPADDR=192.168.1.129
    8. NETMASK=255.255.255.128
    9.  
    10. fichier : /etc/sysconfig/network
    11. configuration :
    12. NETWORKING=yes
    13. HOSTNAME=toto.lan.fr
    14. GATEWAY=192.168.1.254
  8. sponsorised links
  9. 3 months ago by jon207 and saved by 1 other
    1. #Pour changer les permissions récursivement sur les dossiers sans toucher aux autres fichiers :
    2.  
    3. chmod u-w $(ls -l -R | sed -n '/^d/p' | awk '{print $9 }')
    4.  
    5. #va enlever le droit d'écriture à tous les dossiers sans toucher aux autres fichiers
    6. #utile par exemple pour appliquer le droit d'exécution seulement aux dossiers pour pouvoir les parcourir sans pour autant rendre les autres fichiers exécutables
  10. 4 months ago by bobuse
    1. dpkg-query -W --showformat='${Installed-Size} ${Package}\n' | sort -n
  11. 4 months ago by skanx
    time command > timelog doesn't work, because time outputs to stderr
    time command 2> timelog doesn't work either, because time actually is a bash keyword, and it's always run in a subshell
    
    Redirecting the output of time can be achieved by executing the whole command in a block, then redirecting its output:
    { time command; } 2> timelog
    
    Note: Linux also provides a time binary (/usr/bin/time), but with a different output (and might be less efficient ?)

First / Previous / Next / Last / Page 1 of 6 (59 posteets)