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

Posté par  . Licence CC By‑SA.
Étiquettes :
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.
Étiquettes :
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  (site web personnel) . Licence CC By‑SA.
Étiquettes :
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  (site web personnel) . Licence CC By‑SA.
Étiquettes :
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  . Licence CC By‑SA.
Étiquettes :
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.
Étiquettes :
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.
Étiquettes :
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.
Étiquettes :
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.
Étiquettes :
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 (…)

Forum Programmation.shell Plomberie unixienne

Posté par  . Licence CC By‑SA.
Étiquettes :
3
27
fév.
2017

Bonjour,

Je cherche à alimenter une base RRD avec la sortie de la commande vmstat (sous Linux). J’ai créé ma base RRD et je peux l’alimenter manuellement, je n’ai pas de problème de ce côté là.

La commande suivante me sort un enregistrement avec lequel je devrais pouvoir alimenter ma base, toutes les secondes. J’utilise le caractère nul comme séparateur, ce n’est probablement pas une nécessité dans mon cas (donnée RRD…) mais j’ai de toute façon le même comportement en (…)

Forum Programmation.shell concaténer et dé-dupliquer fichiers

Posté par  . Licence CC By‑SA.
Étiquettes :
1
14
fév.
2017

Bonjour,

Le titre n'est peut-être pas très équivoque mais je vais essayer de vous expliquer au mieux mon problème.
J'ai un script qui récupère les valeurs de plusieurs fichiers et qui les ajoute les une à la suite des autres. Afin de conserver l'origine de la valeur, je rajoute en commentaire le nom du fichier source.

Ce qui me donne quelque chose comme ça :

$ cat test.txt
toto #TEST1
tata #TEST1
titi #TEST1
toto #TEST2
titi #TEST2
titi #TEST3

(…)

Forum Programmation.shell Copier n fois un paramètre dans une commande en bash (shell?)

Posté par  . Licence CC By‑SA.
Étiquettes :
3
7
fév.
2017

Bonjour,

Pour une raison inavouable j'avais besoin de dupliquer n fois un paramètre sur une ligne de commande :

commande foo foo foo foo foo foo ... (n fois)

La solution que j'ai trouvé c'est : par exemple pour n = 30

commande foo{,,}{,,,,,}{,,,} 
# (2*5*3)

Est-ce qu'il y a plus simple ? Plus joli ? En bash ? En shell ?

Bien à vous

AJOUT : Je faisais le malin avec ma solution, je (…)