Flyounet a écrit 330 commentaires

  • [^] # Re: Une explication

    Posté par  (site web personnel) . En réponse au message Awk : Besoin d'explications. Évalué à 1.

    Non pas tout à fait d'accord sur ce qui est attendu :

    echo FIELDA01VALUEA01FIELDA21VALUEA21FIELDA31VALUEA3 |awk -F1 '/FIELDA2/{f=NR} f&&NR-1==f' RS="1"
    VALUEA2
    

    et pas FIELDA2.

    En dehors de cela, c'est parfaitement clair. Merci.

  • # Cartes en français

    Posté par  (site web personnel) . En réponse au journal Mes péripéties avec la répétition espacée. Évalué à 2.

    Bonjour,

    Désolé si le sujet dérive moins sur morji et plus Mnemosyne.

    J'ai pas mal cherché et pas mal pas trouvé des cartes pour des enfants en CE2 / CM1. Sauf celles que l'on peut utiliser pour apprendre une langue étrangère.

    Du coup le pourquoi Mnemosyne, principalement, parce c'est plus simpe pour les enfants (PC, Tablette, et que je souhaite leur faire apprendre les départements ; donc graphique).

    Si vous connaissez des ressources pour enfants, je suis preneur. En attendant, j'ai commencé à écrire quelques cartes sur la conjugaison : https://framagit.org/Flyounet/cartes-pour-mnemosyne et toute aide est la bienvenue.

  • [^] # Re: Chez moi ça marche...

    Posté par  (site web personnel) . En réponse au message [RÉSOLU] Bash utiliser variable dans une commande du style result=$(commande | grep $variable). Évalué à 2.

    if [ $? = "0" ];then

    Mais non de dieu, tu vas arrêter ça tout de suite !

    $? est un numérique et "0" est une chaine.

    Soit tu utilises :

    if [ $? -eq 0 ];then

    Soit tu préfères un truc moche :

    if [ "$?" = "0" ];then

    Mais pas ton horreur !

    Après tu peux aussi simplifier :

    if grep -q " ${monPath}" /etc/mtab; then
  • [^] # Re: Chez moi ça marche...

    Posté par  (site web personnel) . En réponse au message [RÉSOLU] Bash utiliser variable dans une commande du style result=$(commande | grep $variable). Évalué à 3.

    ni a afficher se qu'elle produit

    man grep et cherches à quoi sert le -q

  • # Chez moi ça marche...

    Posté par  (site web personnel) . En réponse au message [RÉSOLU] Bash utiliser variable dans une commande du style result=$(commande | grep $variable). Évalué à 3.

    Ton code est semble-t-il tout à fait correct, et en l'essayant, je n'ai aucune erreur.

        #!/bin/bash
    
        mountPoint="/media/monPath"
        result=$(mount | grep "$mountPoint" | wc -l)
        if [ ${result} = "1" ];then
                echo "montage effectif"
        else
                echo "montage not work"
        fi

    Ce que personnellement, j'aurais fait (puisque Bash) :

        #!/bin/bash
        mountPoint="/media/monPath"
        mount | grep -q " ${mountPoint}" || { printf '%s' "Mount NOK"; exit 1; }
        printf '%s' "Mount OK"

    Ou bien sans utiliser mount :

        #!/bin/bash
        mountPoint="/media/monPath"
        grep -q " ${mountPoint}" /etc/mtab || { printf '%s' "Mount NOK"; exit 1; }
        printf '%s' "Mount OK"
  • # Tout simplement

    Posté par  (site web personnel) . En réponse au message [sed] Remplacer du texte contenu dans une variable et contenant des () et *. Évalué à 1.

    old_value="(1000)\*80"
    new_value="(1000)\*99"
    sed -i -e 's/BOT_SLEEP_DELAY:'"$old_value"'/BOT_SLEEP_DELAY:'"$new_value"'/' fichier
    
  • # UUOG Detected !

    Posté par  (site web personnel) . En réponse au message [Tuto/HowTo] Monter un serveur VPN avec PiVPN sur Raspbian. Évalué à 1.

    Non au grep -v "grep" !

    ps -aux | grep -v "grep" | grep "openvpn"

    Peut facilement devenir un

    ps -aux | grep -E '[o]penvpn'

    Suivant le grep, un simple ps -aux | grep '[o]penvpn' juste marche (le -E est POSIX).

  • # Moins violent qu'une suppression d'historique

    Posté par  (site web personnel) . En réponse au message [Tuto/HowTo] Installer et configurer Rudder sur Ubuntu/Debian. Évalué à 4.

    Avant la commande :

    $ echo -n "monPassword" | shasum -a 512

    Je préconise plutôt d'utiliser un : export HISTCONTROL=ignorespace (enfin si tu utilises Bash, sinon il y a certainement d'autres options pour ton shell).
    Cela permettra que toute commande commançant par un(e) espace ne sera pas stockée dans l'historique.

    Ce qui donnerait à peu près :

    $ export HISTCONTROL=ignorespace
    $  echo -n "monPassword" | shasum -a 512
    $ # Notez l'espace avant la commande précédente

    Ça te laissera tout ton historique intact.

  • [^] # Re: À vélo, par tous les temps....

    Posté par  (site web personnel) . En réponse au journal Mon sac. Évalué à 1.

    Si je n'avais pas acheter un booq boa nerve, j'aurais bien pris celui là. il me plait bien.

  • # Avec du shell simplement

    Posté par  (site web personnel) . En réponse au message Passer d'une liste monocolonne délimité à une liste sur plusieurs ligne.. Évalué à 1. Dernière modification le 28 décembre 2016 à 14:33.

    Vite fait, si t'es pas pressé pour l'exécution…

    while read a; do b='-n'; [[ "${a}" = '[/toto]' ]] && b=''; echo ${b} "${a}"; done

    Sinon pour awk y a le man

  • # Gensac vs Fisher

    Posté par  (site web personnel) . En réponse au journal Claude Gensac de funèsisée. Évalué à -10.

    J'ai quand même une préférence pour la Carrie dans son costume Slave Bikini… La Gensac, c'est moche (pas que le fait qu'elle essaye de copier sur tous les claqués du moment).

    Cela aurait été la fille à Cruchot, je dis pas, y aurait eu ballotage…

  • [^] # Re: Début de piste

    Posté par  (site web personnel) . En réponse au message Vaincre le SPAM. Ou essayer, au moins.. Évalué à 1.

    Pas seulement Google : RFC 5233

    Voir le Subadressing.

  • # sdiff ?!

    Posté par  (site web personnel) . En réponse au message find, sort & nul char. Évalué à 1.

    sdiff n'est pas suffisant pour ce que tu veux faire ?

    : sdiff <(find expire/ -printf "%u\000%g\000%m\000%h/%f\n" | tr "\000" " ") <(find expire/bash-4.3.42-3.fc23.x86_64/ -printf "%u\000%g\000%m\000%h/%f\n" | tr "\000" " ")
    
    testuser testgrp 755 expire/xpa-2.4-3-build1929                 <
    testuser testgrp 644 expire/xpa-2.4-3-build1929/magicxpa_2.4c-3 <
    testuser testgrp 644 expire/xpa-2.4-3-build1929/magicxpa_2.4c-3 <
    testuser testgrp 755 expire/bash-4.3.42-3.fc23.x86_64           <
    testuser testgrp 755 expire/bash-4.3.42-3.fc23.x86_64/usr         testuser testgrp 755 expire/bash-4.3.42-3.fc23.x86_64/usr
    testuser testgrp 755 expire/bash-4.3.42-3.fc23.x86_64/usr/bin     testuser testgrp 755 expire/bash-4.3.42-3.fc23.x86_64/usr/bin
    testuser testgrp 777 expire/bash-4.3.42-3.fc23.x86_64/usr/bin/b   testuser testgrp 777 expire/bash-4.3.42-3.fc23.x86_64/usr/bin/b
    testuser testgrp 777 expire/bash-4.3.42-3.fc23.x86_64/usr/bin/s   testuser testgrp 777 expire/bash-4.3.42-3.fc23.x86_64/usr/bin/s
    testuser testgrp 755 expire/bash-4.3.42-3.fc23.x86_64/usr/share   testuser testgrp 755 expire/bash-4.3.42-3.fc23.x86_64/usr/share
    testuser testgrp 755 expire/bash-4.3.42-3.fc23.x86_64/usr/share   testuser testgrp 755 expire/bash-4.3.42-3.fc23.x86_64/usr/share
    testuser testgrp 755 expire/bash-4.3.42-3.fc23.x86_64/usr/share   testuser testgrp 755 expire/bash-4.3.42-3.fc23.x86_64/usr/share
    testuser testgrp 777 expire/bash-4.3.42-3.fc23.x86_64/usr/share   testuser testgrp 777 expire/bash-4.3.42-3.fc23.x86_64/usr/share
    testuser testgrp 777 expire/bash-4.3.42-3.fc23.x86_64/usr/share   testuser testgrp 777 expire/bash-4.3.42-3.fc23.x86_64/usr/share
    testuser testgrp 755 expire/bash-4.3.33-2.fc22.i686             <
    testuser testgrp 755 expire/bash-4.3.33-2.fc22.i686/usr         <
    testuser testgrp 755 expire/bash-4.3.33-2.fc22.i686/usr/bin     <
    testuser testgrp 777 expire/bash-4.3.33-2.fc22.i686/usr/bin/bas <
    testuser testgrp 777 expire/bash-4.3.33-2.fc22.i686/usr/bin/sh  <
    testuser testgrp 755 expire/bash-4.3.33-2.fc22.i686/usr/share   <
    testuser testgrp 755 expire/bash-4.3.33-2.fc22.i686/usr/share/m <
    testuser testgrp 755 expire/bash-4.3.33-2.fc22.i686/usr/share/m <
    testuser testgrp 777 expire/bash-4.3.33-2.fc22.i686/usr/share/m <
    testuser testgrp 777 expire/bash-4.3.33-2.fc22.i686/usr/share/m <
    
  • [^] # Re: J'ai envie de dire ...

    Posté par  (site web personnel) . En réponse au message Création .tar bash. Évalué à 1.

    Et il contient quoi ton fichier $1 ?
    Ne dis pas la liste des fichiers, fais un head et copie le icitte.

  • # J'ai envie de dire ...

    Posté par  (site web personnel) . En réponse au message Création .tar bash. Évalué à 4.

    … d'après le man

           -T, --files-from=FILE
                  get names to extract or create from FILE
    
  • # Jamais tu fais un script qui lance SSH

    Posté par  (site web personnel) . En réponse au message Lancement de SSH via script CGI. Évalué à 4.

    Si tu veux vraiment utiliser ton serveur web (partons sur un Httpd Apache, mais fonctionne avec Hiawatha, nginx, …) :

    • Créer un virtual host (demande de configurer ton DNS ou /etd/hosts pour), ou path particulier,
    • Gérer un access.log juste pour cette partie,
    • utilise inotify sur ton access.log pour lancer un script qui :

      • soit lit le fichier de log pour obtenir l'IP et faire une ouverture firewall
      • soit démarre le SSH server.

    N.B. : Si inotify c'est overkill pour toi, tu as la crontab toutes les minutes…

    Aucun script lancé par le Web server. A la limite y a même pas besoin qu'une page existe derrière.

  • [^] # Re: AUFS ?

    Posté par  (site web personnel) . En réponse au message Fusionner deux disques ou deux partitions. Évalué à 1.

    C'est justement pour cela qu'est prévu AUFS, la fusion.

    Lequel va-t-il remplir en premier ? Il choisit : Round-Robin, le disque/directory ayant le plus d'espace, le premier setté… Tu choisis.

    Tu peux même avoir des fichiers en double. Suivant la méthode que tu utilises pour monter tes FS le plus récent, ou le premier monter peut être utiliser.

    Et tes directory sources peuvent tout aussi bien être utiliser directement.

  • # AUFS ?

    Posté par  (site web personnel) . En réponse au message Fusionner deux disques ou deux partitions. Évalué à 1.

    Tu as un point de montage, tes FS peuvent être dans le style qui te fait plaisir (xfs, ext, …), tu les "merges" en un seul point de montage. Et voilà.
    Suivant les options tu écrits sur un disque puis l'autre (round robin), sur celui qui à le plus de place…

    J'ai vite fait écrit un petit truc la dessus : https://flyounet.net/life/2016-07-18-note-pour-plus-tard-comment-configurer-aufs-sur-mon-nas.html

    Par contre niveau rapidité, j'ai pas fait de test. Dans le cadre de mon utilisation, ça me suffit.

  • [^] # Re: Romulien

    Posté par  (site web personnel) . En réponse au journal Microsoft ♥ France. Évalué à 2.

    C'est marrant je l'ai vu il y a pas longtemps et si je me souviens bien dans Zone de terreur, ils disent bien "Romulans" dans la version française. Par la suite, ils disent "Romuliens".

    Souvenez-vous de cet épisode où c'est Sarek qui joue un Romulien. Ou si vous préférez un Romulien qui deviendra Sarek.

  • # PC Engine apu1d4

    Posté par  (site web personnel) . En réponse au journal Encore une «mini board». Évalué à 1.

    C'est vieux, c'est du AMD, mais c'est petit, robuste et ça route du paquet "velument".
    Par contre, c'est plus cher : http://www.pcengines.ch/apu1d4.htm

    Tu as donc raison encore une enième carte…

  • # deeplop<

    Posté par  (site web personnel) . En réponse au journal Chroniques de l'automatisation : la guerre des bots. Évalué à 4.

    Tu en penses quoi ?

  • [^] # Re: Config recommandée

    Posté par  (site web personnel) . En réponse à la dépêche GitLab 8.11 : vue kanban et bien plus . Évalué à 2.

    Bah !? Tu veux pas utiliser 2 GiB de RAM et tu lances du java…

  • # Des sites existent

    Posté par  (site web personnel) . En réponse au journal Écrire des diagrammes de séquences. Évalué à 10.

    Il y a longtemps j'utilisais WebSequence Diagram. C'était bien.

    Mais pas assez ouvert, alors en cherchant un peu, j'ai trouvé : PlantUML. Et comme ils le disent : Open-source tool that uses simple textual descriptions to draw UML diagrams.

    Un exemple simple :

    • Voici le texte utilisé : @startuml Actor User as u box "Client Workstation" #aqua participant "Client Browser" as b participant "Client JavaWebStart" as c endbox box "Servers Infrastructure" #darksalmon participant ReverseProxy as r participant ApplicationServer as s endbox u -> b : I want to go to application https://test.com == Authentication == b -> r : User wants to go to application https://test.com r --> b : OK, but first Authenticate b --> u : Give your creds u -> b : user=test, pass=**** b -> r : OK, here are the credentials r -> r : Checking authentication r --> b : OK you're granted. Take the cookie(s) b --> u : You're accepted. Going to the app == Request a Page to have the JavaWebStart file == b -> r : Going to https://test.com see my cookie(s) r -> r : Checking cookie(s) : OK granted. r -> s : Please have a look on this request note over s The authentication mechanism of the application is not represented in this schema. But it also adds cookie like JSESSIONID. endnote s --> r : The answer (with the link to JavaWebStart) r --> b : The answer (with the link to JavaWebStart) + cookie updated b --> u : The answer u -> b : Click on the JWS b -> s : I want this (including the check on the ReverseProxy for security) s --> b : Here is the file (including the update of cookie on the RP). b --> u : Do you want to execute the JWS ? == Executing JWS == u --> c : Execute c -> r : I want something on https://test.com (i have no cookie) r --> c : **You shall not pass !** note over c,r : That's why the Java Web Start needs to know the cookies @enduml
    • Et l'image générée :

    Diagramme de séquence simple

    PlantUML en action avec l'exemple ci-dessus.

    Bien sûr, je pourrais télécharger le jar et le faire tourner en local, mais j'ai juste pas envie. D'autant plus qu'il y a pléthore de license disponible.

  • # Un peu hors sujet : Mosh

    Posté par  (site web personnel) . En réponse au message Connexion a distance "definitive". Évalué à 4.

    Pour ceux qui n'éteigne jamais leur machine, ça fait aussi l'affaire.

    Dans mon cas, mon portable se connecte à un serveur en utilisant mosh, puis que je passe en veille, que je change de réseau (d'un wifi vers un autre, ou en passant par mon opérateur 3G/4G), je ne perds plus ma session.

    Quelques infos sur mosh :
    - l'ouverture de session se fait au travers de SSH qui lance le server mosh,
    - tout le reste de la communication s'effectue au travers de mosh (en UDP et plus TCP).

    Le plus gros problème (tout est relatif) pour moi est le serveur qui reste à tourner si le client a été tué.
    Depuis presque 3 ans que je l'utilise, je n'ai dû ouvrir qu'une quinzaine de sessions (un reboot tous les 6 mois, ça suffit).

    Bien sûr, je mixe avec screen…

    N.B. : J'avais prévenu c'est un peu HS.

  • # Le bind sur une interface particulière

    Posté par  (site web personnel) . En réponse au message Commande netcat. Évalué à 3.

    Je dirais bien que le bind se fait sur toutes tes interfaces réseau avec le -p 2345 (y compris sur lo0) par défaut.

    Fais un netstat -nlapute (aucun rapport avec quelqu'un de connu) et regarde sur quoi il se bind ton netcat.