Forum Programmation.shell [Résolu] Appel de SSH depuis un Shell script (Bash)

Posté par  (site web personnel) . Licence CC By‑SA.
Étiquettes :
1
13
juin
2014

Bonjour,

En voulant appeler SSH depuis un script Shell (Bash), j'ai les erreurs suivantes : Pseudo-terminal will not be allocated because stdin is not a terminal. et stdin: is not a tty

Ma ligne de commande pour appeler le SSH est la suivante :
DISPLAY=y SSH_ASKPASS=filename setsid ssh -t -X -o 'PreferredAuthentications password,keyboard-interactive' -o 'StrictHostKeyChecking no' ${1:-}

En googlant un peu, j'ai essayé la méthode indiquant d'ajouter un -t et donc avec la ligne de commande suivante, j'ai une autre (…)

Forum Programmation.shell enlever les fins de ligne du résultat de curl

Posté par  . Licence CC By‑SA.
Étiquettes :
1
16
mai
2014

Bonjour.

Je souhaite récupérer le retour d'une API web interne via curl, pour la comparer à un résultat prédéterminé ( en fait, de jouer des tests sans me casser les pieds à devoir me retaper le copier/coller partiel en fonction du serveur ni devoir lire le résultat pour être sûr qu'il est bon ).
Donc, j'ai créé un fichier contenant mes listes de paramètres et un script qui appelle l'URI voulue ( un serveur ou l'autre, principalement ) en ajoutant (…)

Journal Host@home : faciliter l'auto-hébergement

47
27
avr.
2014

On vous dit que google conserve vos données, que facebook les communique à des tiers. Vous vous sentez concernés par les articles parlant de vie privée. Alors ça y est, c'est décidé, vous ne dépendrez plus de sociétés tierces pour héberger vos courriels, pour échanger des fichiers avec vos contacts… Vous allez vous auto-héberger.

Super.

Euh, par contre, comment on fait? Entre le nom de domaine à louer, la machine à choisir en tant que serveur, les lignes de (…)

Forum Programmation.shell Faire un ssh après un sudo

Posté par  . Licence CC By‑SA.
Étiquettes :
0
17
mar.
2014

Bonjour,

Je voudrais me connecter à une machineB avec certain user qui n’est accessible qu’après un sudo.

Je peux me connecter à une machineA
ssh machineA
Puis
machineA> sudo su – superman
puis
superman@machineA> ssh machineB

En effet sur la machineB je ne peux pas faire de sudo.
machineA> sudo su – superman ssh machineB
me demande un mot de passe.
machineA> sudo –l
donne
(root) NOPASSWD: /usr/bin/su - superman, (root) /[a-z]*app/travail/*/*.sh

J’ai testé
machineA> sudo su – superman <&lt (…)

Concours de programmation CodinGame le 22 Février 2014

Posté par  (site web personnel) . Édité par ZeroHeure et Benoît Sibaud. Modéré par Ontologia. Licence CC By‑SA.
25
20
fév.
2014
Jeu

La prochaine édition de CodinGame, le challenge de code en ligne, aura lieu le samedi 22 Février 2014 à 18h (UTC+1).

Ragnarok

L'événement accueillera des développeurs du monde entier pour leur permettre de passer un bon moment, défier leurs pairs, gagner des prix ou entrer en contact avec des sociétés qui leur plaisent et qui recrutent.

Parmi les nouveautés sur la plate-forme :

  • Bash arrive parmi les langages disponibles.
  • Dart 1.1 et de nouvelles bibliothèques pour Perl ont été ajoutés.
  • Le thème de ce challenge est "Ragnarök", issu de la mythologie scandinave. Pour l'occasion, de nouveaux graphismes seront à l'honneur.

Liquidprompt version 1.8

Posté par  (site web personnel) . Édité par Nÿco et claudex. Modéré par patrick_g. Licence CC By‑SA.
29
16
jan.
2014
Ligne de commande

Le Liquid Prompt est un prompt fluide affichant de manière limpide des informations utiles là où vous les verrez : le prompt de votre shell bash ou zsh. Le liquidprompt était déjà bien rempli de fonctionnalités, mais vu la quantité de travail de fond accompli sur la branche de développement, il coulait de source qu'il était temps de sortir une nouvelle version stable.

La version précédente manquait de tests sur les architectures que je ne peux pas tester (MacOS X, *BSD…), mais grâce aux nombreux contributeurs (apparemment pour la plupart francophones) les problèmes ont vite été résolus sur la branche de développement, develop. Grâce au passage de témoin officiel de l'auteur initial, nojhan, j'ai eu les coudées franches pour faire des factorisations plus profondes pour améliorer les performances.

Je profite de cette annonce pour féliciter publiquement deux contributeurs en particulier qui ont participé activement à cette version : François Schmidts et Rolf Morel grâce à des patches décisifs et pour de l'aide à mon travail de mainteneur grâce au défrichage des tickets. Merci !

Liquidprompt version 1.7

Posté par  (site web personnel, Mastodon) . Édité par Benoît Sibaud et Nils Ratusznik. Modéré par Nils Ratusznik. Licence CC By‑SA.
Étiquettes :
42
2
déc.
2013
Technologie

Le Liquid Prompt est un prompt fluide affichant de manière limpide des informations utiles là où vous les verrez : le prompt de votre shell bash ou zsh.

Le liquidprompt était déjà bien rempli de fonctionnalités, mais vu la quantité de travail de fond accompli sur la branche de développement, il coulait de source qu'il était temps de sortir une nouvelle version stable.

Une vague de bugfix (notamment une meilleure compatibilité avec zsh, FreeBSD, OpenBSD et OS X) mais surtout un torrent, que dis-je, un raz-de-marée, d'optimisations (notamment dans les dépôts mercurial ou bazaar) écoulées par le nouveau mainteneur, Olivier Mengué.

Quelques gouttes de fonctionnalités, également :

  • affichage du temps mis par la dernière commande (s'il dépasse un seuil, dans le plus pur style liquidprompt) ;
  • l'affichage du nombre de lignes modifiées dans les dépôts fossil ;
  • la température affichée est maintenant la moyenne des maximums ;
  • désactivation du support de gestion de version pour l'utilisateur root (plus logique d'un point de vue sécurité).

Je ne voudrais pas trop me mouiller, mais je crois qu'on a là un excellent cru.

Bash Argsparse : mieux gérer sa ligne de commande dans ses scripts.

Posté par  (site web personnel) . Édité par Xavier Teyssier, Benoît Sibaud et ZeroHeure. Modéré par claudex. Licence CC By‑SA.
46
10
oct.
2013
Ligne de commande

Je vous présente une bibliothèque écrite en Shell : bash-argsparse

Bash-argsparse permet une gestion des options de la ligne de commande en plus haut niveau qu'un simple getopt, un peu comme le module argparse de python.

Parmi la liste des fonctionnalités, on trouve :

  • la génération automatique du --help ;
  • la vérification des entrées utilisateurs, soit suivant des énumérations, soit suivant des formats pré-établis (nombres entiers, adresses IP, etc.), soit via des résultats de fonctions définies par le développeur du script ;
  • l'exclusion mutuelle de plusieurs options ;
  • le cumul de valeur par répétition d'une option ;
  • et plein d'aut'trucs.

Journal Se souvenir de ses alias bash

Posté par  . Licence CC By‑SA.
Étiquettes :
11
28
juil.
2013

Bonjour,

Mes vacances sont finies, demain c'est la reprise, oh que c'est dur. Durant mes quelques semaines de farniente, je me suis rendu compte que le fichier de mon shell, bash en l'occurrence (certes avec le mode vi activé) était rempli d'alias et de fonctions : présent en premier lieu pour me simplifier la vie - c'est leur rôles - mais aussi pour stocker des commandes à rallonge utilisées trois fois dans l'année. Cela m'arrive donc d'oublier carrément leur existence. (…)

Forum Programmation.shell Quoter une variable contenant des arguments de ligne de commande

Posté par  . Licence CC By‑SA.
Étiquettes :
0
16
juin
2013

J'ai un script bash qui fait une sauvegarde incrémentale dans un tar.gz. Une des variables de configuration doit contenir un nom de répertoires avec caractère générique (glob), et je n'arrive pas à le faire passer

## Configuration de sauvegarde
##############################
repertoires="/home/jgo
/var/spool/mail/jgo"
liste_exclusion="--exclude \"/home/jgo/divers/*\" --exclude \"/home/jgo/.recoll/xapiandb/*.DB\""
ciblelocale=/var/backup/

## autres options
#################

timestampsauvegarde=/home/jgo/timestamp-sauvegarde
nouvelledate=`date "+%s"`
nomclair=${ciblelocale}backup_${nouvelledate}.tar.gz
temp=/tmp/
liste
(…)

Journal Lynxbot-0.4 est sorti - à vos bots web !!

Posté par  (site web personnel) . Licence CC By‑SA.
Étiquettes :
14
29
mai
2013

LynxBot-0.4

LynxBot¹ un outil vraiment cool (en toute objectivité bien sûr) qui donc mérite ce journal et pourrait intéresser certains.

Aujourd'hui il existe peut-être d'autres outils du genre, en Perl, en Python ou en Ruby, dans une extension Firefox ou en standalone. Mais à l'époque ou je le faisais déjà tourner, je n'avais rien trouvé de simple dans le genre.


Mais à quoi que cela sert-il !? -> A programmer des bots web.

Mon but principal était de (…)

Coloriser des flux de texte avec colout

Posté par  (site web personnel, Mastodon) . Édité par Benoît Sibaud. Modéré par claudex. Licence CC By‑SA.
65
4
avr.
2013
Ligne de commande

Les réalisateurs de films policiers ne s'y trompent pas : lire des flux de textes en ligne de commande nécessite parfois le super pouvoir de lisibilité.

Bien que les outils GNU soient extrêmement pratiques pour manipuler des flux de texte, il en manquait un pour aider à mettre en valeur l'information importante, sans masquer l'accessoire. Par exemple pour faciliter la lecture de logs s'étendant sur plusieurs lignes ou pour détecter rapidement le numéro de ligne d'un fichier responsable d'une erreur de compilation.

Heureusement, grâce à la commande colout (aujourd'hui en version 1.0), vous pouvez maintenant très facilement coloriser colorer colorier mettre de la couleur là où vous le souhaitez dans votre ligne de commande.

Basiquement, colout s'utilise comme un filtre de flux de texte classique, généralement après un pipe, et mets en valeur les bouts de texte correspondant à une expression régulière avec une couleur et un style de votre choix :

    <flux de texte> | colout <expression régulière> [couleur [style]]

L'IHM de colout est pensée pour être simple tout en permettant des utilisations vraiment intéressantes, telles que le coloriage l'application des couleurs sur les groupes des expressions, l'utilisation de cartes de couleurs (mais si, vous savez, les couleurs de l'arc-en-ciel…), la coloration la mise en valeur de la syntaxe de code source, des thèmes automatiques et même l'application d'une couleur en fonction de la valeur d'un nombre.

Forum Programmation.shell Calcul occupation disque dur d'un exécutable

Posté par  . Licence CC By‑SA.
Étiquettes :
0
8
avr.
2013

Bonjour à tous

Pour tracer la consommation disque dur lors de l'exécution d'un logiciel de traitement d'images que l'on développe dans ma boîte, j'ai développé rapidement un petit script shell qui fait à intervalle régulier des "df" et exporte les résultats au format CSV.
De la même façon, pour tracer la consommation CPU j'utilise "top" en mode batch.

Dans les deux cas mes scripts marchent très bien mais je suis confronté à des difficultés :
- le parsing de la (…)

Forum Linux.debian/ubuntu [golang] path de crosscompilation non défini au démarrage

Posté par  . Licence CC By‑SA.
Étiquettes :
0
29
jan.
2013

hello,

J'ai un petit souci avec mon install de golang cross compilation.

De lien en lien, j'ai suivi ce wiki http://dave.cheney.net/2012/09/08/an-introduction-to-cross-compilation-with-go pour realiser mon environnement de compilation.

Le script fais un tas de truc que je ne comprends pas particulièrement, en gros il compile et définit ceci :

go-all                     go-freebsd-arm
go-crosscompile-build      go-linux-386
go-crosscompile-build-all  go-linux-amd64
go-darwin-386              go-linux-arm
go-darwin-amd64            go-windows-386
go-freebsd-386             go-windows-amd64
go-freebsd-amd64 

J'ai par la suite ajouté ces lignes à mon ~/.profile

export GOPATH=$HOME/Bureau/go/last-build/mygo
export GOROOT=$HOME/Bureau/go/last-build/go
export PATH=$PATH:$GOROOT/bin

Surtout celle ci,

(…)

Journal Communes de France finissant par "ville"

Posté par  . Licence CC By‑SA.
35
4
jan.
2013

Sommaire

Une connaissance me faisait récemment remarquer qu’une très grande partie des communes françaises dont le nom finit par "ville" se situe en Normandie (départements 14-Calvados, 27-Eure, 50-Manche, 61-Orne et 76-Seine-Maritime).
Je décide donc de prendre la liste des communes françaises, de dénombrer celles finissant par "ville" et d’afficher tout ça sur une jolie carte.

Récupérer les données

La liste des communes est disponible sur le site de l’INSEE. (…)