NBaH a écrit 80 commentaires

  • # mékeskidi

    Posté par  . En réponse au message script shell. Évalué à 8.

    c'est quoi ce sujet ?
    les mots ont l'air d'être à leur place dans les phrases, mais je n'en comprends pas une.
    c'est une traduction automatique ?

    c'est moi ? ou ça vous le fait aussi ?

  • [^] # Re: plus précisément ?

    Posté par  . En réponse au message probleme d'argument. Évalué à 2. Dernière modification le 10 septembre 2016 à 20:41.

    donc, comme indiqué sur les sites anglophones vers lesquels te renvoient les réponses* suivantes données précédemment ;)
    tu peux :
    définir la variable d'environnement PGPASSWORD pour la commande psql, ou
    utiliser le "fichier de mot de passe" ~/.pgpass

    *STFW!

  • # plus précisément ?

    Posté par  . En réponse au message probleme d'argument. Évalué à 1.

    bonjour,

    que veux-tu ?
    forcer la demande du mot de passe, ou
    ne pas avoir à entrer le mot de passe ?

  • [^] # uuog ?

    Posté par  . En réponse au message afficher le nom du process complet dans top, ou glance (HP-UX). Évalué à 3. Dernière modification le 02 juillet 2014 à 00:46.

    Bonjour

    puisque tu connais le nom de la commande :

    ps -fC hpvmapp
  • [^] # Re: retour chariot

    Posté par  . En réponse au message enlever les fins de ligne du résultat de curl. Évalué à 1.

    Hum… je ne suis pas sûr de comprendre. Tu me dis d'utiliser un outil spécialisé, j'imagine?

    non, non, c'est le formatage du code par le moteur du forum qui ch..!

    ${paramètre//motif/chaîne} : il s'agit, parmi les Remplacements de paramètres bash, d'une substitution de motif, qui évite l'emploi d'une commande externe (justement).

  • [^] # Re: retour chariot

    Posté par  . En réponse au message enlever les fins de ligne du résultat de curl. Évalué à 1. Dernière modification le 16 mai 2014 à 14:40.

    var='{"CorrelationID":"test","MessageResponse":[
    {"ResponseCode":4,"ResponseComment":"LineColor too long, it will be truncated"},
    {"ResponseCode":0,"ResponseComment":"success"}]'
    
    echo "`{mathjax} {var//`'\n'/}"
    {"CorrelationID":"test","MessageResponse":[{"ResponseCode":4,"ResponseComment":"LineColor too long, it will be truncated"},{"ResponseCode":0,"ResponseComment":"success"}]```
    :)
    
    ¿ mathjax ? kesako ? il faut lire `echo "${var//$'\n'/}"`
  • # retour chariot

    Posté par  . En réponse au message enlever les fins de ligne du résultat de curl. Évalué à 1.

    ces APIs renvoient un code avec des fins de ligne "\n", ce qui rend la comparaison scriptée avec un résultat attendu pénible.

    peut-on voir le test que tu fais ?
    peut-on voir la sortie de curl en la passant par od -c ?

    est-ce bien le retour à la ligne normal sur *n?x, qui pose problème, ou le \r qu'y ajoute W$ ?

  • [^] # Re: eval expr...

    Posté par  . En réponse au message Quoter une variable contenant des arguments de ligne de commande. Évalué à 2.

    quand on écrit un script en bash, la portabilité…
    soit on a un shebang sh, qui dit que le script doit être portable,
    soit on a un shebang bash, et on tire le meilleur parti des extensions que propose bash.

  • # avec un tableau ?

    Posté par  . En réponse au message Quoter une variable contenant des arguments de ligne de commande. Évalué à 3.

    Bonjour,

    liste_exclusion=( --exclude "/home/jgo/divers/*" --exclude "/home/jgo/.recoll/xapiandb/*.DB" )
    tar cfz "test2-$nomclair" --files-from "$liste" "${liste_exclusion[@]}"
    
    

    ±

  • [^] # Re: en full bash ...oops

    Posté par  . En réponse au message Majuscules et minuscule dans les noms de repertoires. Évalué à 1.

    mv "./toto a la plage/" "./Toto A La Plage"

  • [^] # Re: en full bash ...

    Posté par  . En réponse au message Majuscules et minuscule dans les noms de repertoires. Évalué à 1.

    mkdir "toto a la plage"
    (shopt -s nullglob
    for dir in ./*/
    do newDir="${dir%/*}" path="${newDir%/*}" newDir="${newDir##*/}"
    echo "mv "$dir" "$path/$(set -- $newDir; echo "${@^}")""
    done)
    Toto A La Plage

    autre chose ? Je peux... ?

  • [^] # Re: en bash ....

    Posté par  . En réponse au message Majuscules et minuscule dans les noms de repertoires. Évalué à 1.

    Bonjour,

    l'usage de l'IFS n'est ici pas utile.
    en effet, la boucle for n'itère pas sur le résultat d'une commande, mais sur le développement de l'astérisque, qui, lui, échappe les espaces contenus dans les noms de fichiers.

    de plus,
    [ -d "$toto" ] parce que si $toto contient un espace le test va geindre : «opérateur binaire attendu»

    OLDIFS=IFS
    IFS=OLDIFS
    bah, il va être beau l'$IFS !

  • # :help

    Posté par  . En réponse au message Raccourcis pour changer de page dans vim. Évalué à 7.

    CTRL-d : Déplacement vers le bas d'un demi-écran.
    CTRL-u : Déplacement vers le haut d'un demi-écran.
    CTRL-f : Déplacement vers le bas d'un écran.
    CTRL-b : Déplacement vers le haut d'un écran.

  • # en bash

    Posté par  . En réponse au message Découpage d'un fichier EML. Évalué à 2.

    unset body
    shopt extglob
    while read line
    do [[ $line == @(To|From|Subject|Date)* ]] && echo "$line"
       ((body)) && printf '> %s\n' "$line"
       [ -z "$line" ] && body=1
    done <email.eml
    

    ...
    ?

  • # Debian y a déjà pensé

    Posté par  . En réponse au message Installer les même paquets d'un ordinateur à un autre pour debian / Ubuntu. Évalué à 10.

    dpkg --get-selections > monInstallation
    

    transfert du fichier monInstallation sur une autre machine. puis, sur cette autre machine :

    dpkg --clear-selections
    dpkg --set-selections < monIstallation
    apt-get dselect-upgrade
    
  • [^] # Re: ls ?

    Posté par  . En réponse au message Boucle for ne prend pas en compte les lignes. Évalué à 2.

    for i in * ; do [ -f "$i" ] && mkdir "${i%%-*}" ; done
  • [^] # Re: Fait

    Posté par  . En réponse au message Remplacer les espaces blanches dans les noms de fichier d'une arborescence par des underscores. Évalué à 2.

    ah ben, non :)
    find ./ -type f -name "* *" -exec r_space.sh {} +

    r_space.sh :#! /bin/bash
    echo "fichiers trouvés : $@"
    for file
    do echo Converting "$file" to "${file// /_}"
    mv "$file" "${file// /_}"
    done
    \; retourne les fichiers un à un, donc itérer avec une boucle for n'est pas utile
    + retourne tous les fichiers trouvés d'un coup
  • # plus tout ce que je n'ai pas vu...

    Posté par  . En réponse au message Un gestionnaire de téléchargement en shell. Évalué à 4.

    Bonjour,

    if [ ! -d $dir ]
    then
    mkdir $dir
    fi
    peut être remplacé par [ -d $dir ] || mkdir $dirainsi que toutes les autres conditions simples

    if [ "$tmp" = "$dir/*.tmp" ] ça ne marchera jamais : les * ne sont pas développés entre " " et entre [ ], à moins qu'il puisse exister un fichier *.tmp !

    echo $(basenamenon
    :basename ... >> fichiervoire, utiliser le développement des paramètres
  • [^] # oula !

    Posté par  . En réponse au message remplacement valeur attribut xml particulier. Évalué à 0.

    IFS comprend des caractères (par défaut " ' ' '\t '\n' "), et les considère comme des alternatives l'un à l'autre : (IFS='bdf' read -a var <<< "abcdefg"; echo "${var[@]}")
    a c e g
  • [^] # case pour une seule condition ?

    Posté par  . En réponse au message bash : construction d'une ligne de commande dont certains arguments contiennent des espaces. Évalué à 2.

    Si tu n'as qu'un seul test sur requestedDist :
    [\[ $requestedDist =~ hardy|jaunty|karmic|lucid|maverick ]] && cowbuilderOpts+=( --components="main universe" )
    ira bien.

    PS: j'ai ajouté une \ entre les crochets pour les mettre en évidence, mais elle ne doit pas figurer dans le code !
  • # array/liste

    Posté par  . En réponse au message bash : construction d'une ligne de commande dont certains arguments contiennent des espaces. Évalué à 4.

    cowbuilderOpts=( --autocleanaptcache --debootstrap=cdebootstrap )
    requestedDist=lucid

    case $requestedDist in
    # universe is required for ubuntu
    hardy|jaunty|karmic|lucid|maverick)
    cowbuilderOpts+=( --components="main universe" )
    ;;
    esac

    for opt in "${cowbuilderOpts[@]}"; do echo $opt; done
    Tu devrais prendre l'habitude de ne pas nommer tes variables tout en majuscules
  • # apt-install ?

    Posté par  . En réponse au message apt-install ?. Évalué à 2.

    t'es sûr?
    apparemment pas dans mes dépôts Squeeze
  • # blossom, comme

    Posté par  . En réponse au message qu'en pensez-vous ? le site web d'un webdesigner & webdéveloppeur. Évalué à 4.

    blosxom, y a plus grand chose à faire : décorer...
    web designer, c'est quoi, Damidot sur internet

    oui, je suis méchant !
  • # la solution universelle

    Posté par  . En réponse au message Distro légère en français?. Évalué à 1.

    Debian !
    < / vendredi >

    la plupart des distros de récupération sont légères, justement pour être mises sur des supports légers (type clés USB) : regarder sur distrowatch, liveparted et consort...
  • [^] # Re: fail2ban

    Posté par  . En réponse au message Configuration ignore IP de fail2ban. Évalué à 2.

    par défaut, iptables effectue une requête DNS pour montrer l'adresse/nom de l'expéditeur
    =>
    iptables -n -L
    !
    -n force le mode numérique (en fait, n'effectue de recherche DNS)...
    ?