Parse de fichier ini en bash

Tags:: linux :: bash :: développement

Je sais que ça parait un peu bizarre mais il n'existe pas de commande bash pour lire une valeur dans un fichier ini... vous allez me dire "avec un vieux coup de php, perl ou python ça va vite" mais moi je préfère un truc en Bash...

Donc voilà un petit script que je me suis codé il y a quelques temps, retrouvé dans les méandres de mon serveur... je me suis dis que comme je vous ai pas offert de cadeaux à noël... ;)

A rendre exécutable et/ou à placer dans le PATH (par exemple /usr/bin/):
http://www.metal3d.org/tools/iniget-0.0.1.tar.bz2.

Pour faire simple, l'installation se fait de cette manière:


su -
#mot de passe root
cd /tmp
wget http://www.metal3d.org/tools/iniget-0.0.1.tar.bz2
tar jxvf iniget-0.0.1.tar.bz2
cd iniget-0.0.1
cp iniget /usr/bin
chmod +x /usr/bin/iniget
# et on quitte root
exit

#testez voir si ça marche:
iniget -h
 

Le script installé, il s'utilise simplement; imaginez un fichier exemple.ini:


[section1]
var1=foo

[section2]
var1=bar
autre.valeur=Hello World
 

La commande à utiliser pour récupérer une valeur:


> iniget section1.var1 exemple.ini
foo

> iniget section2.var1 exemple.ini
bar

> iniget section2.autre.valeur exemple.ini
Hello World
 

Voilà, ça peut servir si vous voulez faire d'autres scripts qui ont besoin de configuration et que vous aimeriez utiliser des fichier ini. C'est vrai que c'est tout de même très lisible, d'ailleurs PHP, Samba et bien d'autre logiciels ont choisi ce type de configuration.

Utilisez le code barre pour ouvrir le ticket dans votre mobile:
This ticket on you mobile
1 Samedi 12 Juin 2010 18:42:18, ToTo

Il y aurait la même chose pour écrire un fichier INI ?

2 Jeudi 23 Décembre 2010 15:22:40, fylefou

super , exactement ce que je cherchais

Ajouter un commentaire
Veuillez répondre à la question suivante : Taper "geek" sans les guillemets

Trackbacks

Pour ajouter un trackback (retrolien) sur ce ticket, utilisez cette adresse: http://www.metal3d.org/index.php/trackback/default/tb?id=blog%2F166

Tags

Blog Copix Communication PC Config Fedora Vidéo Humour Autre Web Materiel Informatique PHP Développement Mootools HTML Linux WEB IE CSS Vista Microsoft Sympa XHTML Quizz Widget Klik CWE Voeux Bonne année Musique CCRMA Son Audio MAO Reconnaissance vocale Windows Mac Compiz MacOS Mysql Sun Base de données BD Screenlets Screenlet RPM compiz Ubuntu Live FireFox Derambarsh Facebook media informations Sécurité javascript SSH Commande Marketing concours ipod wii QT Trooltech Nokia Libre Logiciels GPL Attali Gnome Dock Compiler Bench undelete reiserfs recovery recover Thread Serveur Optimisation Server Apache Album RSS Flash Air XML Firefox Blender Opensource Orange Internet LiveBox Animaux Droits Logiciels Libres Google Loi RBS netcat Bash Téléphone Spam 3D NIDIA Standards Widgets Merise UML Streaming Developpement Perl MySQL Firewall Parfeu Bayes Novell Réseau Python LVS Salon FTP Dedibox Chrome Administration IRC Gentoo troll video Nouveauté Finance Etudiant spéctacle OpenOffice Javascript Java Info Eclpise ATI design mootools KDE Bureau Design GNU C Pages Jaunes Fun Bijoux Art mail Admin vmware fedora linux VirtualBox VMWare Qemu KVM vim Grep Fglrx Webkit GTK google web JQuery Coup de gueule coup de gueule Lois SVG Raycaster Canvas Hadopi Desktop Jeux Les Sims développement astuces Screen firefox Mobile Safaru Wine bash commande astuce Wave ooc C++ C# Netbook Hercules Bureautique Twitter Safari W3C chrome kazehakaze midori navigateur gecko webkit Links Liens Pyhon Nouvelles Metal Perso Conférence JDLL PCC Roadsend OOC News Acteur Cinéma Chanteur Seven windows orthographe pcc php jdll Slide Application mysql Html twitter python screen curses SVN Android Gphone iPhone OpenGL MindMap Projet Javascrtip Ajax Guitare Tab Tablature JSON firebug Chromium Iphone Titanium music sound android ogg ogv streaming Arkyne svn subversion gnome VLC Tv encoder ffmpeg Cryptage apple microsoft HTML5 Max Apple code youtube quvi git uzbl webgl chromium

  Catalogue professionnel de musique libre


  • twitter entries...
follow me on Twitter

Valid XHTML 1.0 Strict

tumblr visitor