Journal Faites des tests !

Posté par . Licence CC by-sa.
13
22
juil.
2018

Actuellement sur le développement d'un programme en langage C++ et avec la quête de produire un logiciel fiable et performant je me suis mis à la recherche d'outils me permettant d'atteindre cet objectif.

Après quelques recherches, j'en ai découvert deux, le test unitaire et fonctionnel. Pour le test unitaire j'ai choisi la librairie Boost et un script Bash pour le test fonctionnel.

Durant la rédaction de ces tests, j'ai été surpris plusieurs fois à corriger des bugs dans mon programme (...)

Forum Programmation.shell lancer un script au début d'un shutdown

Posté par . Licence CC by-sa.
Tags :
0
20
juil.
2018

Bonjour,

Je voudrais lancer un script shell lors de l'extinction de l'ordinateur.
Pas si difficile que ça… mais là où je coince c'est qu'il faudrait :
- que ce script se lance au tout début du shutdown avant l'arrêt du serveur X car il affiche un message via zenity
- que le script bloque le shutdown le temps qu'il finisse

J'ai essayé avec un service systemd mais je n'arrive pas à le lancer avant l'arrêt du serveur X.
Et il (...)

Journal Répliquer ses vidéos Peertube − premiers pas

12
13
juil.
2018

Bonjour nal, et bonjour à tou⋅te⋅s,

Tu connais Peertube, la super plateforme fédérée pour s'échanger des vidéos en (web)torrent. Si c'est pas le cas, je te renvoie à une dépêche parue récemment.

Une des questions qui secoue pas mal la communauté Peertube, c'est comment répliquer les vidéos de mon instance pour les seeder depuis un autre ordinateur ? Si les développeureuses de Peertube comptent intégrer un système de réplication à leur plateforme, ça fait pas de mal de bidouiller (...)

Forum Programmation.shell Transformer une chaine de caractères en bash

Posté par . Licence CC by-sa.
Tags :
0
27
juin
2018

Bonjour, en entrée, j'ai une chaine de la forme « YYYXX » et je voudrais écrire une fonction bash qui me la transforme en « XX-YYY » où XX est du texte de longueur variable (typiquement entre 1 et 3 caractères) et pouvant prendre n'importe quelle lettre ASCII (majuscule ou minuscule) et YYY est un nombre de taille variable pouvant aller de 1 à 999.

Par exemple, je voudrais transformer « 252Cf » et « Cf-252 ».

Je n'ai aucune (...)

Forum Linux.debian/ubuntu [Résolu] Lancer une commande des qu'une connexion internet est détéctée.

Posté par . Licence CC by-sa.
0
1
mai
2018

Bonjour,
Très récemment, j'ai décidé d'en finir définitivement avec Windows qui ne me servait plus que pour les cours.
J'avais déjà mon debian en dual boot, donc j'installe les logiciels dont j'ai besoin et je me dis qu'il serait bien de mettre en place rsync pour sauvegarder mes cours au cas ou.
J'ai un raspberry pi chez moi donc pas de soucis mais c'est la que j'en viens à vous : comment faire pour que rsync s’exécute dès qu'il détecte (...)

Journal Portage de TapTempo en Bash

Posté par (page perso) . Licence CC by-sa.
15
28
fév.
2018

Bonjour à tous,

Suites aux ports de TapTempo en Rust, Ada, JS, PERL et python (2.7)

Voilà ma version en bash ;-)

#!/bin/bash

PREV="$(date +%s%N | cut -b1-13)"
TAPS="0"
COUNT="0"

while read -p "tapTempo : press any key (CTRL+D for quit)" tap ; do
    CUR="$(date +%s%N | cut -b1-13)"
    TAPS="$TAPS + $(($CUR-$PREV))"
    PREV=$CUR
    COUNT="$(($COUNT + 1))"
done

echo ""

Journal Créer une image iso de Debian pré-seedée sans efforts

Posté par (page perso) . Licence CC by-sa.
33
19
déc.
2017

Bonjour Nal,

Il y a des fois où on aimerait bien pré-seeder ses images iso de Debian pour l'installer un peu plus rapidement, installer directement quelques paquets, etc.

Si le wiki de Debian est bien fait, c'est quand même usant de répéter encore et encore les mêmes actions parce qu'on s'est planté sur son fichier preseed.cfg, parce qu'on a oublié un truc, etc. J'ai donc créé un script (pas très compliqué) pour simplifier la création d'une image iso pré-seedée de (...)

Journal Gufo: un langage de shell moderne!

Posté par . Licence CC by-sa.
27
7
déc.
2017

Gufo est un prototype de langage de script moderne qui peut embarquer des commandes unix et servir de shell.

Pourquoi

Bash est, pour les utilisateurs techniques, l'interface texte majeure sous les systèmes GNU-linux.

La raison principale est la facilité à appeler des programmes externes et la possibilité de combiner des flux d'entrées/sorties dans l'environnement orienté fichier de GNU-linux.

En gardant conscience de la qualité et de la quantité de travail qui a été mise dans Bash, un système d'exploitation moderne (...)

Journal Bash et les raccourcis clavier

Posté par (page perso) . Licence CC by-sa.
50
18
sept.
2017

Bonjour nal.

Aujourd’hui je vais parler des raccourcis clavier sur Bash. Parce que j’en ai envie.

C’est très pratique et reposant de pouvoir manipuler Bash en bougeant le moins possible ses mains. Tant qu’on écrit du texte, c’est facile. Mais, très souvent, on a besoin de bouger le curseur d’écriture, de supprimer un caractère, d’avoir l’auto‐complétion, etc. Pour cela, le réflexe est d’utiliser les touches dédiées du clavier : Tab, , « Retour charriot », etc. Ces touches étant aux bords du (...)

Forum Programmation.shell [Résolu] Charger plusieurs valeurs depuis un fichier

Posté par . Licence CC by-sa.
2
22
juin
2017

Salut les gens,

Dans le cadre d'un petit script bash qui me sert à faire du timelapse sur un RPi, j'aurais besoin de charger plusieurs valeurs dans plusieurs variables depuis un fichier.

J'explique…

Pour charger une valeur dans une variable, je fais par exemple

Frequency="$(</home/pi/timelapse/frequency)"

ou bien

Frequency=( `cat "/home/pi/timelapse/frequency" `)

(mais c'est un UUOC il paraît ;-), donc j'évite!)

Sauf que j'aurais besoin de faire ça avec 2 variables différentes depuis un seul fichier

C'est possible ?

Forum Linux.général Comment éviter d'effacer des fichiers avec rm *

Posté par . Licence CC by-sa.
Tags :
2
17
juin
2017

Bonsoir,

Sous bash, je viens d'effacer par erreurs des fichiers car je souhaitais écrire "rm *.jpg". Mais comme la touche 'Shift' est près de la touche 'Entrée', j'ai appuyé sur 'Entrée' par erreur et j'ai donc tapé "rm *".

Ce n'est pas la première fois que cela m'arrive et je souhaiterais un garde-fou contre cela.

Quelques remarques :
- J'ai bien noté qu'il existe safe-rm, mais il ne protège pas contre les wildcards.
- Je crois que sous zsh, il (...)

Forum Programmation.shell Remplacer des cellules

Posté par . Licence CC by-sa.
3
8
mar.
2017

Bonjour,

Ce forum m'a bien aidé jusque là dans ma découverte du shell mais là je bloque.
Je suis nouvellement admin réseau et j'ai 2 fichiers .csv que je veux fusionner.

identifiants2015.csv

$cat identifiants2015.csv
CLASSE,NOM,PRENOM,IDENTIFIANT,M.de P.
c601,A,antoine,antoine.a,4f56yg
c504,B,micheline,micheline.b,654pgh

identifiants2016.csv

$cat identifiants2016.csv
CLASSE,NOM,PRENOM,LOGIN,MOT DE PASSE
c601,Z,bob,bob.z,t954fd
c502,A,antoine,antoine.a,(déjà attribué)
c404,B,micheline,micheline.b,(déjà attribué)

Et je voudrais obtenir ceci en remplaçant "(déjà attribué)" par le mot de passe 2015.
logins2016_maj2016.csv

$cat logins_maj2016.csv
CLASSE,NOM,PRENOM,LOGIN,MOT DE PASSE
c601,Z,bob,bob.z,t954fd
c502,A,antoine,antoine.a,4f56yg
c404,B,micheline,micheline.b,654pgh

Je me doute qu'il y a quelque (...)

Forum Programmation.shell Conseil GUI

Posté par . Licence CC by-sa.
3
7
mar.
2017

Bonjour,

J'ai besoin de vos idées, lumières, conseils.

J'aimerais faire une interface pour du code bash afin de piloter des VM tournant sous Virtualbox.
Le code n'est pas très compliqué car il reprend des commandes fournies par Virtualbox et d'autres éléments de l'hôte en lui même.
Donc pour cette partie pas de soucis je gère.

Par contre là où je coince c'est pour la partie interface. Car je voudrais créer une interface afin de rendre la gestion de la chose (...)

Forum Programmation.shell J'ai une colle pour les experts shell ou système.

Posté par . Licence CC by-sa.
Tags :
3
5
mar.
2017

J'ai une petite colle sur un comportement que je n'arrive pas à comprendre. Peut-être que certains d'entre vous pourront m'éclairer.

Tout d'abord la base. J'ai plusieurs machines qui envoient à une machine centrale des fichiers par ftp dans un dossier spécifique pour chaque machine émettrice. Jusque là simple…

Cette machine centrale qui reçoit ces fichiers à un rôle de dispatch des fichiers reçus dans d'autres dossiers en local en fonction de ceux-ci.

Au début, je faisais tourner un cron toutes (...)