Bonjour
Il y a quelque temps, j'ai commencé un petit projet de conversion automatique de fichier reposant sur awk
et sh
(bash
?(1))
Le projet utilise aussi deux fichiers annexes : un programme perl
et sa bibliothèque.
Pour résumer, mon projet est composé des cinq fichiers suivants :
- le fichier
.sh
qui sera directement appelé pour effectuer conversion, - deux fichiers
.awk
, - la bibliothèque
perl
, - le programme
perl
.
Pour l'instant, pour me simplifier la vie, le fichier .sh
impose que les fichiers .awk
soient dans le même répertoire que lui et que le programme perl soit dans le PATH
.
Pour la distribution, je vois plusieurs approches :
- copier tous les fichiers dans un répertoire du
PATH
, genre/usr/bin
ou/usr/local/bin
- créer un répertoire où je colle tout que j'ajoute au
PATH
(question subsidiaire, comment faire, pour un utilisateur, pour tous ?) - modifier le script pour qu'il aille chercher les fichiers qui vont bien dans un répertoire dédié (
.../share/...
)
Quelle pourrait-être la bonne approche ?
Merci
PS:
- C'est un projet sans grande ambition qui transforme des fichiers .FIT (créés par une montre garmin) en fichier .svg qui trace le chemin parcouru sur une carte OSM.
- La principale motivation pour moi était
l'apprentissagela découverte des scripts sh et awk. - Je vais aussi en profiter pour me mettre à git (via framagit), pareil, pour apprentissage.
1 - Je mets bash
entre parenthèses car au moment où j'écris, je n'ai pas encore vérifié sur le script se contentait de sh
ou pas, mon #!
le pointe, mais je n'ai pas vérifié qu'il n'y avait pas un lien symbolique dans mon système…
# Pas de .sh
Posté par Sytoka Modon (site web personnel) . Évalué à 4. Dernière modification le 30 septembre 2016 à 11:58.
Le script principal ne doit pas avoir de .sh On ne met pas d'extension sur les programmes utilisateurs sous UNIX ;-)
Sinon, je mettrais tout le reste dans un dossier ../lib/monproj/bin et je rajoute en début du script un truc du genre :
Voile une piste ?distribpath=$(dirname $(which $0))
export PATH "${distribpath}/../lib/monproj/bin:$PATH"
Suivre le flux des commentaires
Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.