diff --git a/Batterie/FONCTION_UNIQUE/UTILITAIRES/Test_R_fusion-elements-supperposes/cube_soude.her b/Batterie/FONCTION_UNIQUE/UTILITAIRES/Test_R_fusion-elements-supperposes/cube_soude.her index a43bf33..9cff6f5 100644 --- a/Batterie/FONCTION_UNIQUE/UTILITAIRES/Test_R_fusion-elements-supperposes/cube_soude.her +++ b/Batterie/FONCTION_UNIQUE/UTILITAIRES/Test_R_fusion-elements-supperposes/cube_soude.her @@ -2,11 +2,7 @@ ########################################################################### # ecriture automatique d'un maillage au format .her, par Herezh++ # ########################################################################### -<<<<<<< cube_soude.her - # version: 6.700 -======= - # version: 6.701 ->>>>>>> 1.3 + # version: 6.725 diff --git a/Batterie/FONCTION_UNIQUE/UTILITAIRES/Test_R_fusion-elements-supperposes/cube_soude.lis b/Batterie/FONCTION_UNIQUE/UTILITAIRES/Test_R_fusion-elements-supperposes/cube_soude.lis index d21e795..dc6ee48 100644 --- a/Batterie/FONCTION_UNIQUE/UTILITAIRES/Test_R_fusion-elements-supperposes/cube_soude.lis +++ b/Batterie/FONCTION_UNIQUE/UTILITAIRES/Test_R_fusion-elements-supperposes/cube_soude.lis @@ -2,11 +2,7 @@ ########################################################################### # ecriture automatique d'un maillage au format .lis, par Herezh++ # ########################################################################### -<<<<<<< cube_soude.lis - # version: 6.700 -======= - # version: 6.701 ->>>>>>> 1.3 + # version: 6.725 diff --git a/Batterie/FONCTION_UNIQUE/UTILITAIRES/Test_R_fusion-elements-supperposes/fusion_elements_supperposes.verif1 b/Batterie/FONCTION_UNIQUE/UTILITAIRES/Test_R_fusion-elements-supperposes/fusion_elements_supperposes.verif1 index 0386f8c..2c08351 100755 --- a/Batterie/FONCTION_UNIQUE/UTILITAIRES/Test_R_fusion-elements-supperposes/fusion_elements_supperposes.verif1 +++ b/Batterie/FONCTION_UNIQUE/UTILITAIRES/Test_R_fusion-elements-supperposes/fusion_elements_supperposes.verif1 @@ -1,4 +1,4 @@ -#!/usr/bin/perl +#!/usr/bin/env perl use strict; use warnings; diff --git a/Batterie/FONCTION_UNIQUE/UTILITAIRES/Test_R_fusion-maillage/fusion_maillage.verif1 b/Batterie/FONCTION_UNIQUE/UTILITAIRES/Test_R_fusion-maillage/fusion_maillage.verif1 index b236a4a..2f9c74e 100755 --- a/Batterie/FONCTION_UNIQUE/UTILITAIRES/Test_R_fusion-maillage/fusion_maillage.verif1 +++ b/Batterie/FONCTION_UNIQUE/UTILITAIRES/Test_R_fusion-maillage/fusion_maillage.verif1 @@ -1,4 +1,4 @@ -#!/usr/bin/perl +#!/usr/bin/env perl use strict; use warnings; diff --git a/Batterie/FONCTION_UNIQUE/UTILITAIRES/Test_R_fusion-noeuds-voisins/cube_soude.her b/Batterie/FONCTION_UNIQUE/UTILITAIRES/Test_R_fusion-noeuds-voisins/cube_soude.her index 0d1ea6a..ceea7cb 100644 --- a/Batterie/FONCTION_UNIQUE/UTILITAIRES/Test_R_fusion-noeuds-voisins/cube_soude.her +++ b/Batterie/FONCTION_UNIQUE/UTILITAIRES/Test_R_fusion-noeuds-voisins/cube_soude.her @@ -2,11 +2,7 @@ ########################################################################### # ecriture automatique d'un maillage au format .her, par Herezh++ # ########################################################################### -<<<<<<< cube_soude.her - # version: 6.700 -======= - # version: 6.701 ->>>>>>> 1.3 + # version: 6.725 diff --git a/Batterie/FONCTION_UNIQUE/UTILITAIRES/Test_R_fusion-noeuds-voisins/cube_soude.lis b/Batterie/FONCTION_UNIQUE/UTILITAIRES/Test_R_fusion-noeuds-voisins/cube_soude.lis index 6cf542a..bea243b 100644 --- a/Batterie/FONCTION_UNIQUE/UTILITAIRES/Test_R_fusion-noeuds-voisins/cube_soude.lis +++ b/Batterie/FONCTION_UNIQUE/UTILITAIRES/Test_R_fusion-noeuds-voisins/cube_soude.lis @@ -2,11 +2,7 @@ ########################################################################### # ecriture automatique d'un maillage au format .lis, par Herezh++ # ########################################################################### -<<<<<<< cube_soude.lis - # version: 6.700 -======= - # version: 6.701 ->>>>>>> 1.3 + # version: 6.725 diff --git a/Batterie/FONCTION_UNIQUE/UTILITAIRES/Test_R_fusion-noeuds-voisins/fusion_noeuds_voisins.verif1 b/Batterie/FONCTION_UNIQUE/UTILITAIRES/Test_R_fusion-noeuds-voisins/fusion_noeuds_voisins.verif1 index 0386f8c..2c08351 100755 --- a/Batterie/FONCTION_UNIQUE/UTILITAIRES/Test_R_fusion-noeuds-voisins/fusion_noeuds_voisins.verif1 +++ b/Batterie/FONCTION_UNIQUE/UTILITAIRES/Test_R_fusion-noeuds-voisins/fusion_noeuds_voisins.verif1 @@ -1,4 +1,4 @@ -#!/usr/bin/perl +#!/usr/bin/env perl use strict; use warnings; diff --git a/Batterie/FONCTION_UNIQUE/UTILITAIRES/Test_R_suppression-noeuds-non-references/suppression_noeuds_non_references.verif1 b/Batterie/FONCTION_UNIQUE/UTILITAIRES/Test_R_suppression-noeuds-non-references/suppression_noeuds_non_references.verif1 index 0386f8c..2c08351 100755 --- a/Batterie/FONCTION_UNIQUE/UTILITAIRES/Test_R_suppression-noeuds-non-references/suppression_noeuds_non_references.verif1 +++ b/Batterie/FONCTION_UNIQUE/UTILITAIRES/Test_R_suppression-noeuds-non-references/suppression_noeuds_non_references.verif1 @@ -1,4 +1,4 @@ -#!/usr/bin/perl +#!/usr/bin/env perl use strict; use warnings; diff --git a/Doc/doc_procedure_verification.tex b/Doc/doc_procedure_verification.tex index 2596711..d950554 100644 --- a/Doc/doc_procedure_verification.tex +++ b/Doc/doc_procedure_verification.tex @@ -602,7 +602,7 @@ Il est important de noter que cet ex \end{minipage} \noindent\rule{0.8\textwidth}{0.5pt}\\ -Cet exécutable peut \^etre programmé dans n'importe quel langage, mais pour éviter les problèmes de compilateur, il est préférable d'éviter les langages nécessitant une compilation (par exemple : C, C++, Fortran, etc...). Il est préférables d'utiliser les langages interprétés (par exemple : sh, zsh, Perl, Python, etc...).\\ +Cet exécutable peut \^etre programmé dans n'importe quel langage, mais pour éviter les problèmes de compilateur, il est préférable d'éviter les langages nécessitant une compilation (par exemple : C, C++, Fortran, etc...). Il est préférables d'utiliser les langages interprétés (par exemple : sh, zsh, Perl, Python, etc...). Pour augmenter la portabilité de ces scripts, il faut éviter de mettre un chemin absolu vers l'interpréteur dans l'en-t\^ete. On utilisera la forme : \verb|#!/usr/bin/env| suivi du nom de l'interpréteur (exemples : \verb|#!/usr/bin/env perl| ou bien \verb|#!/usr/bin/env python|).\\ \underline{Remarque} : le script \verb|.verif| étant lancé après le calcul, il peut tout à fait servir de moyen détourné pour modifier le fichier \verb|.info| avant le calcul suivant (par exemple, pour tester un m\^eme mot-clé mais avec diverses valeurs de paramètres). Voir exemple section \ref{section_exemple_test_5}. @@ -726,6 +726,12 @@ Actuellement, il n'y a pas d'exemple dans le r \item[-] modif du script \verb|Perl/test.pl| : il y avait une faille dans la subroutine \verb|lancement_commande|. Sur certaines machines, la redirection \verb|tee| ne se fait pas instantanément. Ceci conduisait à croire que le fichier de redirection n'était pas créé et donc renvoyait un problème lié à la redirection de l'affichage. Désormais, un délai est accordé pour attendre la création de ce fichier (environ 2 secondes maximum avec un check de l'existence du fichier de redirection toutes les millisecondes). De manière indirecte, ceci a conduit à créer un nouvel indicateur de status pour signaler si le calcul ne se lance pas (\verb|probleme lancement calcul|).\\ \end{itemize}%tiret +\item[$\bullet$] 2015-09-30 (Julien Troufflard) : +\begin{itemize} +\item[-] modif de l'en-t\^ete de tous les scripts perl (y compris les \verb|.verif| de la batterie) : amélioration de la portabilité en modifiant le shebang selon \url{https://en.wikipedia.org/wiki/Shebang_\%28Unix\%29#Portability}. Désormais, les scripts commencent par \verb|#!/usr/bin/env perl| au lieu du chemin absolu \verb|#!/usr/bin/perl| qui pourrait ne pas fonctionner sur certaines machines à l'architecture atypique (et actualisation de la section \ref{section_fichiers_facultatifs} pour signaler cette habitude à prendre pour les fichiers \verb|.verif|).\\ +remarque : modif également pour le script zsh \verb|verifier_exeHZ.zsh|\\ +\end{itemize}%tiret + %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %template d ajout d une nouvelle mise à jour (composé d'une puce "bullet" avec Date et auteur de la modif, suivie d une série de puce "-" %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% diff --git a/Perl/genere_catalogue_tests.pl b/Perl/genere_catalogue_tests.pl index 434d760..1c7a687 100755 --- a/Perl/genere_catalogue_tests.pl +++ b/Perl/genere_catalogue_tests.pl @@ -1,4 +1,4 @@ -#!/usr/bin/perl -s +#!/usr/bin/env perl -s use strict; use warnings; use File::Basename; @@ -969,7 +969,7 @@ citecolor= green %couleur citation biblio # - nom de la commande # # en sortie : -# - chemin aboslu de la commande (0 si commande introuvable) +# - chemin absolu de la commande (0 si commande introuvable) # sub verif_commande { my $cmd = shift;#nom de la commande diff --git a/Perl/genere_rapport.pl b/Perl/genere_rapport.pl index 099def6..15033c2 100755 --- a/Perl/genere_rapport.pl +++ b/Perl/genere_rapport.pl @@ -1,5 +1,4 @@ -#!/usr/bin/perl -s - +#!/usr/bin/env perl -s use strict; #use Regexp::Common;#expressions regulieres; par exemples pour reconnaitre un entier $RE{num}{int} ou un reel $RE{num}{real} use File::Basename; diff --git a/Perl/test.pl b/Perl/test.pl index 4e2dc9a..8538f24 100755 --- a/Perl/test.pl +++ b/Perl/test.pl @@ -1,5 +1,4 @@ -#!/usr/bin/perl -#!/usr/local/bin/perl +#!/usr/bin/env perl use strict; use warnings; @@ -844,6 +843,7 @@ sub printRapport { # - indicateur sur le status du calcul : "ok" => calcul a termine normalement (converge ou non) # "depassement taille maximum" => calcul a conduit a un depassement du maximum autorise pour la taille du fichier de redirection # "probleme redirection affichage" => la redirection de l affichage n a pas ete faite correctement (dans ce cas, probleme lie a la commande tee) +# "probleme lancement calcul" => le calcul ne s est pas lance # "activite cpu nulle" => calcul ne s arretait pas alors qu il avait une activite cpu nulle sub lancement_commande { use IO::Handle; @@ -948,6 +948,7 @@ sub lancement_commande { } + # #...maintenant, on va lancer un processus fils pour surveiller le calcul. On provoque son arret force (kill -9) dans les cas suivants : # 1) si la taille du fichier $fredir_tee depasse $TAILLE_MAX_FIC_REDIR octets @@ -1091,7 +1092,7 @@ sub lancement_commande { # - nom de la commande # # en sortie : -# - chemin aboslu de la commande (0 si commande introuvable) +# - chemin absolu de la commande (0 si commande introuvable) # sub verif_commande { my $cmd = shift;#nom de la commande diff --git a/Perl/verif_existence_repertoire_test.pl b/Perl/verif_existence_repertoire_test.pl index 4bf16d7..987eebe 100755 --- a/Perl/verif_existence_repertoire_test.pl +++ b/Perl/verif_existence_repertoire_test.pl @@ -1,5 +1,4 @@ -#!/usr/bin/perl -#!/usr/local/bin/perl +#!/usr/bin/env perl use strict; use warnings; use English; diff --git a/Rapport/rapport_test_L.txt b/Rapport/rapport_test_L.txt index 79c5f9d..5128a9e 100644 --- a/Rapport/rapport_test_L.txt +++ b/Rapport/rapport_test_L.txt @@ -1,11 +1,11 @@ --------------------------------------- - RAPPORT DE TEST - --------------------------------------- -- version HZ++ : HZppfast 6.719 +- version HZ++ : HZppfast 6.725 - Batterie de tests lancee -- le 29/09/2015 -- a 1:44 (heure locale) +- le 30/09/2015 +- a 23:19 (heure locale) --------------------------------------- ./Batterie/FONCTION_UNIQUE/LOI_DE_COMPORTEMENT/CP_venant_du_3D/Test_L_tunnel_ISOELAS_CP/.CVisu1 diff --git a/Rapport/rapport_test_R.txt b/Rapport/rapport_test_R.txt index 97e9daf..154beb2 100644 --- a/Rapport/rapport_test_R.txt +++ b/Rapport/rapport_test_R.txt @@ -1,14 +1,14 @@ --------------------------------------- - RAPPORT DE TEST - --------------------------------------- -- version HZ++ : HZppfast 6.719 +- version HZ++ : HZppfast 6.725 - Batterie de tests lancee -- le 29/09/2015 -- a 1:44 (heure locale) +- le 01/10/2015 +- a 0:46 (heure locale) --------------------------------------- -./Batterie/FONCTION_UNIQUE/CONTACT/Test_R_contact_axi_non_dynamique/.CVisu1 +./TYPE_DE_CALCUL/Test_R_chung_lee_dynamique_explicite/.CVisu1 -> grandeur testee : colonne [1] - comparaison absolue (precision : 1.e-6) -> OK - comparaison relative (precision : 1.e-3%) -> OK @@ -65,473 +65,7 @@ - comparaison absolue (precision : 1.e-6) -> OK - comparaison relative (precision : 1.e-3%) -> OK - -> grandeur testee : colonne [15] - - comparaison absolue (precision : 1.e-6) -> OK - - comparaison relative (precision : 1.e-3%) -> OK - - -> grandeur testee : colonne [16] - - comparaison absolue (precision : 1.e-6) -> OK - - comparaison relative (precision : 1.e-3%) -> OK - - -> grandeur testee : colonne [17] - - comparaison absolue (precision : 1.e-6) -> OK - - comparaison relative (precision : 1.e-3%) -> OK - - -> grandeur testee : colonne [18] - - comparaison absolue (precision : 1.e-6) -> OK - - comparaison relative (precision : 1.e-3%) -> OK - - -> grandeur testee : colonne [19] - - comparaison absolue (precision : 1.e-6) -> OK - - comparaison relative (precision : 1.e-3%) -> OK - - -> grandeur testee : colonne [20] - - comparaison absolue (precision : 1.e-6) -> OK - - comparaison relative (precision : 1.e-3%) -> OK - - -> grandeur testee : colonne [21] - - comparaison absolue (precision : 1.e-6) -> OK - - comparaison relative (precision : 1.e-3%) -> OK - - -> grandeur testee : colonne [22] - - comparaison absolue (precision : 1.e-6) -> ECHEC - -> Valeur = 7.911199265281e+03 - -> Valeur reference = 3.955599632662e+03 - -> Difference = 3955.599633 - - comparaison relative (precision : 1.e-3%) -> ECHEC - -> Valeur = 7.911199265281e+03 - -> Valeur reference = 3.955599632662e+03 - -> Difference relative = 100.000% - - -> grandeur testee : colonne [23] - - comparaison absolue (precision : 1.e-6) -> ECHEC - -> Valeur = -5.715819369653e+00 - -> Valeur reference = -2.857909684829e+00 - -> Difference = -2.857910 - - comparaison relative (precision : 1.e-3%) -> ECHEC - -> Valeur = -5.715819369653e+00 - -> Valeur reference = -2.857909684829e+00 - -> Difference relative = 100.000% - - -> grandeur testee : colonne [24] - - comparaison absolue (precision : 1.e-6) -> OK - - comparaison relative (precision : 1.e-3%) -> OK - - -> grandeur testee : colonne [25] - - comparaison absolue (precision : 1.e-6) -> OK - - comparaison relative (precision : 1.e-3%) -> OK - - -> grandeur testee : colonne [26] - - comparaison absolue (precision : 1.e-6) -> OK - - comparaison relative (precision : 1.e-3%) -> OK - - -> grandeur testee : colonne [27] - - comparaison absolue (precision : 1.e-6) -> OK - - comparaison relative (precision : 1.e-3%) -> OK - - -> grandeur testee : colonne [28] - - comparaison absolue (precision : 1.e-6) -> OK - - comparaison relative (precision : 1.e-3%) -> OK - - -> grandeur testee : colonne [29] - - comparaison absolue (precision : 1.e-6) -> OK - - comparaison relative (precision : 1.e-3%) -> OK - - -> grandeur testee : colonne [30] - - comparaison absolue (precision : 1.e-6) -> OK - - comparaison relative (precision : 1.e-3%) -> OK - - -> grandeur testee : colonne [31] - - comparaison absolue (precision : 1.e-6) -> OK - - comparaison relative (precision : 1.e-3%) -> OK - - -> grandeur testee : colonne [32] - - comparaison absolue (precision : 1.e-6) -> OK - - comparaison relative (precision : 1.e-3%) -> OK - - -> grandeur testee : colonne [33] - - comparaison absolue (precision : 1.e-6) -> OK - - comparaison relative (precision : 1.e-3%) -> OK - - -> grandeur testee : colonne [34] - - comparaison absolue (precision : 1.e-6) -> OK - - comparaison relative (precision : 1.e-3%) -> OK - - -> grandeur testee : colonne [35] - - comparaison absolue (precision : 1.e-6) -> OK - - comparaison relative (precision : 1.e-3%) -> OK - -./Batterie/FONCTION_UNIQUE/LOI_DE_COMPORTEMENT/CP_venant_du_3D/Test_R_quadrangle_isohyper3dorgeas1_CP_traction/.CVisu1 - -> grandeur testee : colonne [1] - - comparaison absolue (precision : 1.e-6) -> OK - - comparaison relative (precision : 1.e-3%) -> OK - - -> grandeur testee : colonne [2] - - comparaison absolue (precision : 1.e-6) -> OK - - comparaison relative (precision : 1.e-3%) -> OK - - -> grandeur testee : colonne [3] - - comparaison absolue (precision : 1.e-6) -> OK - - comparaison relative (precision : 1.e-3%) -> OK - - -> grandeur testee : colonne [4] - - comparaison absolue (precision : 1.e-6) -> OK - - comparaison relative (precision : 1.e-3%) -> OK - - -> grandeur testee : colonne [5] - - comparaison absolue (precision : 1.e-6) -> OK - - comparaison relative (precision : 1.e-3%) -> OK - - -> grandeur testee : colonne [6] - - comparaison absolue (precision : 1.e-6) -> OK - - comparaison relative (precision : 1.e-3%) -> OK - - -> grandeur testee : colonne [7] - - comparaison absolue (precision : 1.e-6) -> OK - - comparaison relative (precision : 1.e-3%) -> OK - - -> grandeur testee : colonne [8] - - comparaison absolue (precision : 1.e-6) -> OK - - comparaison relative (precision : 1.e-3%) -> OK - - -> grandeur testee : colonne [9] - - comparaison absolue (precision : 1.e-6) -> OK - - comparaison relative (precision : 1.e-3%) -> OK - - -> grandeur testee : colonne [10] - - comparaison absolue (precision : 1.e-6) -> OK - - comparaison relative (precision : 1.e-3%) -> OK - -./Batterie/FONCTION_UNIQUE/LOI_DE_COMPORTEMENT/ISOHYPER3DFAVIER3/Test_R_cube_ISOHYPER3DFAVIER3_cisaillement/.CVisu1 - -> grandeur testee : colonne [1] - - comparaison absolue (precision : 1.e-6) -> OK - - comparaison relative (precision : 1.e-3%) -> OK - - -> grandeur testee : colonne [2] - - comparaison absolue (precision : 1.e-6) -> OK - - comparaison relative (precision : 1.e-3%) -> OK - - -> grandeur testee : colonne [3] - - comparaison absolue (precision : 1.e-6) -> OK - - comparaison relative (precision : 1.e-3%) -> OK - - -> grandeur testee : colonne [4] - - comparaison absolue (precision : 1.e-6) -> OK - - comparaison relative (precision : 1.e-3%) -> OK - - -> grandeur testee : colonne [5] - - comparaison absolue (precision : 1.e-6) -> OK - - comparaison relative (precision : 1.e-3%) -> OK - - -> grandeur testee : colonne [6] - - comparaison absolue (precision : 1.e-6) -> OK - - comparaison relative (precision : 1.e-3%) -> OK - -./Batterie/FONCTION_UNIQUE/LOI_DE_COMPORTEMENT/ISOHYPER3DFAVIER3/Test_R_cube_ISOHYPER3DFAVIER3_traction/.CVisu1 - -> grandeur testee : colonne [1] - - comparaison absolue (precision : 1.e-6) -> OK - - comparaison relative (precision : 1.e-3%) -> OK - - -> grandeur testee : colonne [2] - - comparaison absolue (precision : 1.e-6) -> OK - - comparaison relative (precision : 1.e-3%) -> OK - - -> grandeur testee : colonne [3] - - comparaison absolue (precision : 1.e-6) -> OK - - comparaison relative (precision : 1.e-3%) -> OK - - -> grandeur testee : colonne [4] - - comparaison absolue (precision : 1.e-6) -> OK - - comparaison relative (precision : 1.e-3%) -> OK - - -> grandeur testee : colonne [5] - - comparaison absolue (precision : 1.e-6) -> OK - - comparaison relative (precision : 1.e-3%) -> OK - - -> grandeur testee : colonne [6] - - comparaison absolue (precision : 1.e-6) -> OK - - comparaison relative (precision : 1.e-3%) -> OK - - -> grandeur testee : colonne [7] - - comparaison absolue (precision : 1.e-6) -> OK - - comparaison relative (precision : 1.e-3%) -> OK - - -> grandeur testee : colonne [8] - - comparaison absolue (precision : 1.e-6) -> OK - - comparaison relative (precision : 1.e-3%) -> OK - -./Batterie/FONCTION_UNIQUE/LOI_DE_COMPORTEMENT/MAXWELL3D/Test_R_cube_MAXWELL3D_traction_relaxation/.CVisu1 - -> grandeur testee : colonne [1] - - comparaison absolue (precision : 1.e-6) -> OK - - comparaison relative (precision : 1.e-3%) -> OK - - -> grandeur testee : colonne [2] - - comparaison absolue (precision : 1.e-6) -> OK - - comparaison relative (precision : 1.e-3%) -> OK - - -> grandeur testee : colonne [3] - - comparaison absolue (precision : 1.e-6) -> OK - - comparaison relative (precision : 1.e-3%) -> OK - - -> grandeur testee : colonne [4] - - comparaison absolue (precision : 1.e-6) -> OK - - comparaison relative (precision : 1.e-3%) -> OK - - -> grandeur testee : colonne [5] - - comparaison absolue (precision : 1.e-6) -> OK - - comparaison relative (precision : 1.e-3%) -> OK - - -> grandeur testee : colonne [6] - - comparaison absolue (precision : 1.e-6) -> OK - - comparaison relative (precision : 1.e-3%) -> OK - - -> grandeur testee : colonne [7] - - comparaison absolue (precision : 1.e-6) -> OK - - comparaison relative (precision : 1.e-3%) -> OK - - -> grandeur testee : colonne [8] - - comparaison absolue (precision : 1.e-6) -> OK - - comparaison relative (precision : 1.e-3%) -> OK - -./Batterie/FONCTION_UNIQUE/LOI_DE_COMPORTEMENT/MOONEY_RIVLIN_3D/Test_R_cube_MOONEY_RIVLIN_3D_cisaillement/.CVisu1 - -> grandeur testee : colonne [1] - - comparaison absolue (precision : 1.e-6) -> OK - - comparaison relative (precision : 1.e-3%) -> OK - - -> grandeur testee : colonne [2] - - comparaison absolue (precision : 1.e-6) -> OK - - comparaison relative (precision : 1.e-3%) -> OK - - -> grandeur testee : colonne [3] - - comparaison absolue (precision : 1.e-6) -> OK - - comparaison relative (precision : 1.e-3%) -> OK - - -> grandeur testee : colonne [4] - - comparaison absolue (precision : 1.e-6) -> OK - - comparaison relative (precision : 1.e-3%) -> OK - - -> grandeur testee : colonne [5] - - comparaison absolue (precision : 1.e-6) -> OK - - comparaison relative (precision : 1.e-3%) -> OK - - -> grandeur testee : colonne [6] - - comparaison absolue (precision : 1.e-6) -> OK - - comparaison relative (precision : 1.e-3%) -> OK - -./Batterie/FONCTION_UNIQUE/LOI_DE_COMPORTEMENT/MOONEY_RIVLIN_3D/Test_R_cube_MOONEY_RIVLIN_3D_traction/.CVisu1 - -> grandeur testee : colonne [1] - - comparaison absolue (precision : 1.e-6) -> OK - - comparaison relative (precision : 1.e-3%) -> OK - - -> grandeur testee : colonne [2] - - comparaison absolue (precision : 1.e-6) -> OK - - comparaison relative (precision : 1.e-3%) -> OK - - -> grandeur testee : colonne [3] - - comparaison absolue (precision : 1.e-6) -> OK - - comparaison relative (precision : 1.e-3%) -> OK - - -> grandeur testee : colonne [4] - - comparaison absolue (precision : 1.e-6) -> OK - - comparaison relative (precision : 1.e-3%) -> OK - - -> grandeur testee : colonne [5] - - comparaison absolue (precision : 1.e-6) -> OK - - comparaison relative (precision : 1.e-3%) -> OK - - -> grandeur testee : colonne [6] - - comparaison absolue (precision : 1.e-6) -> OK - - comparaison relative (precision : 1.e-3%) -> OK - - -> grandeur testee : colonne [7] - - comparaison absolue (precision : 1.e-6) -> OK - - comparaison relative (precision : 1.e-3%) -> OK - - -> grandeur testee : colonne [8] - - comparaison absolue (precision : 1.e-6) -> OK - - comparaison relative (precision : 1.e-3%) -> OK - -./Batterie/FONCTION_UNIQUE/LOI_DE_COMPORTEMENT/Orgeas/Test_R_cube_isohyperd3dorgeas1_traction/.CVisu1 - -> grandeur testee : colonne [1] - - comparaison absolue (precision : 1.e-6) -> OK - - comparaison relative (precision : 1.e-3%) -> OK - - -> grandeur testee : colonne [2] - - comparaison absolue (precision : 1.e-6) -> OK - - comparaison relative (precision : 1.e-3%) -> OK - - -> grandeur testee : colonne [3] - - comparaison absolue (precision : 1.e-6) -> OK - - comparaison relative (precision : 1.e-3%) -> OK - - -> grandeur testee : colonne [4] - - comparaison absolue (precision : 1.e-6) -> OK - - comparaison relative (precision : 1.e-3%) -> OK - - -> grandeur testee : colonne [5] - - comparaison absolue (precision : 1.e-6) -> OK - - comparaison relative (precision : 1.e-3%) -> OK - - -> grandeur testee : colonne [6] - - comparaison absolue (precision : 1.e-6) -> OK - - comparaison relative (precision : 1.e-3%) -> OK - - -> grandeur testee : colonne [7] - - comparaison absolue (precision : 1.e-6) -> OK - - comparaison relative (precision : 1.e-3%) -> OK - - -> grandeur testee : colonne [8] - - comparaison absolue (precision : 1.e-6) -> OK - - comparaison relative (precision : 1.e-3%) -> OK - - -> grandeur testee : colonne [9] - - comparaison absolue (precision : 1.e-6) -> OK - - comparaison relative (precision : 1.e-3%) -> OK - - -> grandeur testee : colonne [10] - - comparaison absolue (precision : 1.e-6) -> OK - - comparaison relative (precision : 1.e-3%) -> OK - - -> grandeur testee : colonne [11] - - comparaison absolue (precision : 1.e-6) -> OK - - comparaison relative (precision : 1.e-3%) -> OK - - -> grandeur testee : colonne [12] - - comparaison absolue (precision : 1.e-6) -> OK - - comparaison relative (precision : 1.e-3%) -> OK - - -> grandeur testee : colonne [13] - - comparaison absolue (precision : 1.e-6) -> OK - - comparaison relative (precision : 1.e-3%) -> OK - - -> grandeur testee : colonne [14] - - comparaison absolue (precision : 1.e-6) -> OK - - comparaison relative (precision : 1.e-3%) -> OK - - -> grandeur testee : colonne [15] - - comparaison absolue (precision : 1.e-6) -> OK - - comparaison relative (precision : 1.e-3%) -> OK - - -> grandeur testee : colonne [16] - - comparaison absolue (precision : 1.e-6) -> OK - - comparaison relative (precision : 1.e-3%) -> OK - -./Batterie/FONCTION_UNIQUE/LOI_DE_COMPORTEMENT/Test_R_barre_PRANDTL_REUSS1D_traction/.CVisu1 - -> grandeur testee : colonne [1] - - comparaison absolue (precision : 1.e-6) -> OK - - comparaison relative (precision : 1.e-3%) -> OK - - -> grandeur testee : colonne [2] - - comparaison absolue (precision : 1.e-6) -> OK - - comparaison relative (precision : 1.e-3%) -> OK - - -> grandeur testee : colonne [3] - - comparaison absolue (precision : 1.e-6) -> OK - - comparaison relative (precision : 1.e-3%) -> OK - - -> grandeur testee : colonne [4] - - comparaison absolue (precision : 1.e-6) -> OK - - comparaison relative (precision : 1.e-3%) -> OK - -./Batterie/FONCTION_UNIQUE/LOI_DE_COMPORTEMENT/Test_R_cube_ISOHYPERBULK3_compression_hydrostatique/.CVisu1 - -> grandeur testee : colonne [1] - - comparaison absolue (precision : 1.e-6) -> OK - - comparaison relative (precision : 1.e-3%) -> OK - - -> grandeur testee : colonne [2] - - comparaison absolue (precision : 1.e-6) -> OK - - comparaison relative (precision : 1.e-3%) -> OK - - -> grandeur testee : colonne [3] - - comparaison absolue (precision : 1.e-6) -> OK - - comparaison relative (precision : 1.e-3%) -> OK - - -> grandeur testee : colonne [4] - - comparaison absolue (precision : 1.e-6) -> OK - - comparaison relative (precision : 1.e-3%) -> OK - - -> grandeur testee : colonne [5] - - comparaison absolue (precision : 1.e-6) -> OK - - comparaison relative (precision : 1.e-3%) -> OK - - -> grandeur testee : colonne [6] - - comparaison absolue (precision : 1.e-6) -> OK - - comparaison relative (precision : 1.e-3%) -> OK - - -> grandeur testee : colonne [7] - - comparaison absolue (precision : 1.e-6) -> OK - - comparaison relative (precision : 1.e-3%) -> OK - - -> grandeur testee : colonne [8] - - comparaison absolue (precision : 1.e-6) -> OK - - comparaison relative (precision : 1.e-3%) -> OK - - -> grandeur testee : colonne [9] - - comparaison absolue (precision : 1.e-6) -> OK - - comparaison relative (precision : 1.e-3%) -> OK - - -> grandeur testee : colonne [10] - - comparaison absolue (precision : 1.e-6) -> OK - - comparaison relative (precision : 1.e-3%) -> OK - -./Batterie/FONCTION_UNIQUE/TYPE_DE_CALCUL/Test_R_chung_lee_dynamique_explicite/.CVisu1 - -> grandeur testee : colonne [1] - - comparaison absolue (precision : 1.e-6) -> OK - - comparaison relative (precision : 1.e-3%) -> OK - - -> grandeur testee : colonne [2] - - comparaison absolue (precision : 1.e-6) -> OK - - comparaison relative (precision : 1.e-3%) -> OK - - -> grandeur testee : colonne [3] - - comparaison absolue (precision : 1.e-6) -> OK - - comparaison relative (precision : 1.e-3%) -> OK - - -> grandeur testee : colonne [4] - - comparaison absolue (precision : 1.e-6) -> OK - - comparaison relative (precision : 1.e-3%) -> OK - - -> grandeur testee : colonne [5] - - comparaison absolue (precision : 1.e-6) -> OK - - comparaison relative (precision : 1.e-3%) -> OK - - -> grandeur testee : colonne [6] - - comparaison absolue (precision : 1.e-6) -> OK - - comparaison relative (precision : 1.e-3%) -> OK - - -> grandeur testee : colonne [7] - - comparaison absolue (precision : 1.e-6) -> OK - - comparaison relative (precision : 1.e-3%) -> OK - - -> grandeur testee : colonne [8] - - comparaison absolue (precision : 1.e-6) -> OK - - comparaison relative (precision : 1.e-3%) -> OK - - -> grandeur testee : colonne [9] - - comparaison absolue (precision : 1.e-6) -> OK - - comparaison relative (precision : 1.e-3%) -> OK - - -> grandeur testee : colonne [10] - - comparaison absolue (precision : 1.e-6) -> OK - - comparaison relative (precision : 1.e-3%) -> OK - - -> grandeur testee : colonne [11] - - comparaison absolue (precision : 1.e-6) -> OK - - comparaison relative (precision : 1.e-3%) -> OK - - -> grandeur testee : colonne [12] - - comparaison absolue (precision : 1.e-6) -> OK - - comparaison relative (precision : 1.e-3%) -> OK - - -> grandeur testee : colonne [13] - - comparaison absolue (precision : 1.e-6) -> OK - - comparaison relative (precision : 1.e-3%) -> OK - - -> grandeur testee : colonne [14] - - comparaison absolue (precision : 1.e-6) -> OK - - comparaison relative (precision : 1.e-3%) -> OK - -./Batterie/FONCTION_UNIQUE/TYPE_DE_CALCUL/Test_R_dynamique_explicite/.CVisu1 +./TYPE_DE_CALCUL/Test_R_dynamique_explicite/.CVisu1 -> grandeur testee : colonne [1] - comparaison absolue (precision : 1.e-6) -> OK - comparaison relative (precision : 1.e-3%) -> OK @@ -612,7 +146,7 @@ -> Valeur reference = 2.068916079252e+03 -> Difference relative = 0.005% -./Batterie/FONCTION_UNIQUE/TYPE_DE_CALCUL/Test_R_dynamique_implicite/.CVisu1 +./TYPE_DE_CALCUL/Test_R_dynamique_implicite/.CVisu1 -> grandeur testee : colonne [1] - comparaison absolue (precision : 1.e-6) -> OK - comparaison relative (precision : 1.e-3%) -> OK @@ -669,7 +203,7 @@ - comparaison absolue (precision : 1.e-6) -> OK - comparaison relative (precision : 1.e-3%) -> OK -./Batterie/FONCTION_UNIQUE/TYPE_DE_CALCUL/Test_R_dynamique_implicite_HHT/.CVisu1 +./TYPE_DE_CALCUL/Test_R_dynamique_implicite_HHT/.CVisu1 -> grandeur testee : colonne [1] - comparaison absolue (precision : 1.e-6) -> OK - comparaison relative (precision : 1.e-3%) -> OK @@ -726,7 +260,7 @@ - comparaison absolue (precision : 1.e-6) -> OK - comparaison relative (precision : 1.e-3%) -> OK -./Batterie/FONCTION_UNIQUE/TYPE_DE_CALCUL/Test_R_dynamique_relaxation_dynam/.CVisu1 +./TYPE_DE_CALCUL/Test_R_dynamique_relaxation_dynam/.CVisu1 -> grandeur testee : colonne [1] - comparaison absolue (precision : 1.e-6) -> OK - comparaison relative (precision : 1.e-3%) -> OK @@ -747,7 +281,7 @@ - comparaison absolue (precision : 1.e-6) -> OK - comparaison relative (precision : 1.e-3%) -> OK -./Batterie/FONCTION_UNIQUE/TYPE_DE_CALCUL/Test_R_non_dynamique/.CVisu1 +./TYPE_DE_CALCUL/Test_R_non_dynamique/.CVisu1 -> grandeur testee : colonne [1] - comparaison absolue (precision : 1.e-6) -> OK - comparaison relative (precision : 1.e-3%) -> OK @@ -780,7 +314,7 @@ - comparaison absolue (precision : 1.e-6) -> OK - comparaison relative (precision : 1.e-3%) -> OK -./Batterie/FONCTION_UNIQUE/TYPE_DE_CALCUL/Test_R_zhai_dynamique_explicite/.CVisu1 +./TYPE_DE_CALCUL/Test_R_zhai_dynamique_explicite/.CVisu1 -> grandeur testee : colonne [1] - comparaison absolue (precision : 1.e-6) -> OK - comparaison relative (precision : 1.e-3%) -> OK @@ -837,15 +371,3 @@ - comparaison absolue (precision : 1.e-6) -> OK - comparaison relative (precision : 1.e-3%) -> OK -./Batterie/FONCTION_UNIQUE/UTILITAIRES/Test_R_fusion-elements-supperposes/.CVisu1 - -> ECHEC (resultat fourni par le script de verification fusion_elements_supperposes.verif1) - -./Batterie/FONCTION_UNIQUE/UTILITAIRES/Test_R_fusion-maillage/.CVisu1 - -> OK (resultat fourni par le script de verification fusion_maillage.verif1) - -./Batterie/FONCTION_UNIQUE/UTILITAIRES/Test_R_fusion-noeuds-voisins/.CVisu1 - -> ECHEC (resultat fourni par le script de verification fusion_noeuds_voisins.verif1) - -./Batterie/FONCTION_UNIQUE/UTILITAIRES/Test_R_suppression-noeuds-non-references/.CVisu1 - -> OK (resultat fourni par le script de verification suppression_noeuds_non_references.verif1) - diff --git a/doc_procedure_verification.pdf b/doc_procedure_verification.pdf index 48f1a8e..e331de5 100644 Binary files a/doc_procedure_verification.pdf and b/doc_procedure_verification.pdf differ diff --git a/verifier_exeHZ.pl b/verifier_exeHZ.pl index 2e1973f..9d490c7 100755 --- a/verifier_exeHZ.pl +++ b/verifier_exeHZ.pl @@ -1,5 +1,4 @@ -#!/usr/bin/perl -#!/usr/local/bin/perl +#!/usr/bin/env perl use strict; use warnings; use English; @@ -79,7 +78,8 @@ if($is_opt_help or $#ARGV < 0) { my $exeHZ;#argument obligatoire : nom de l executable Herezh my $is_opt_R = 0;#indicateur de l option -R (0 par defaut; si egal 1 => lancement des tests rapides Test_R uniquement) my $is_opt_L = 0;#indicateur de l option -L (0 par defaut; si egal 1 => lancement des tests longs Test_L uniquement) -my $fic_rapport;#option -rpt : nom du fichier de rapport a exploiter (non defini par defaut; si utilisation de l option -rpt => lancement uniquement des tests ayant echoue de ce rapport (ECHEC) +my $is_opt_rpt = 0;#indicateur de l option -rpt (0 par defaut; si egal 1 => lancement uniquement des tests ayant un status ECHEC dans un rapport precedent) +my $opt_rpt_fic_rapport;#option -rpt : nom du fichier de rapport a exploiter (non defini par defaut) #On vide le contenu de @ARGV en conservant les arguments obligatoires dans @args et traiter les options au cas par cas my $opt; @@ -97,10 +97,11 @@ while($#ARGV != -1) { } #option -rpt elsif($opt eq '-rpt') { + $is_opt_rpt = 1; ($#ARGV != -1) or die "\nErreur (prog:$NOM_PROG, opt:-rpt) : l option -rpt necessite de specifier un nom de fichier rapport...\n\n"; - $fic_rapport = shift(@ARGV); + $opt_rpt_fic_rapport = shift(@ARGV); #verif de l existence du fichier rapport - (-e $fic_rapport) or die "\nErreur (prog:$NOM_PROG, opt:-rpt) : fichier rapport $fic_rapport introuvable...\n\n"; + (-e $opt_rpt_fic_rapport) or die "\nErreur (prog:$NOM_PROG, opt:-rpt) : fichier rapport $opt_rpt_fic_rapport introuvable...\n\n"; } #* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * #note aux developpeurs : AJOUTER ICI LE TRAITEMENT D UNE NOUVELLE OPTION @@ -141,17 +142,14 @@ if($is_opt_R and $is_opt_L) { die "\nErreur (prog:$NOM_PROG, opt:-R/-L) : interdiction d utiliser les options -R et -L en meme temps...\n\n"; } -#si option -rpt : verif de l existence et de la validite du fichier rapport $fic_rapport -if(defined $fic_rapport) { - #existence - (-e $fic_rapport) or die "\nErreur (prog:$NOM_PROG, opt:-rpt) : fichier $fic_rapport introuvable...\n\n"; - +#si option -rpt : verif de la validite du fichier rapport $opt_rpt_fic_rapport +if($is_opt_rpt) { #validite (par une heuristique : est valide si on y trouve la chaine "RAPPORT DE TEST", sensible a la casse) my $fichier_valide = 0; - open(FIC, "<$fic_rapport"); + open(FIC, "<$opt_rpt_fic_rapport"); while() {next if(not /RAPPORT DE TEST/); $fichier_valide = 1; last;} close(FIC); - $fichier_valide or die "\nErreur (prog:$NOM_PROG, opt:-rpt) : fichier $fic_rapport existe mais n est pas un fichier de rapport genere par le script $NOM_PROG...\n\n"; + $fichier_valide or die "\nErreur (prog:$NOM_PROG, opt:-rpt) : fichier $opt_rpt_fic_rapport existe mais n est pas un fichier de rapport genere par le script $NOM_PROG...\n\n"; } #* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * #note aux developpeurs : AJOUTER ICI DE NOUVELLES VERIF EN LIEN AVEC UNE NOUVELLE OPTION OU UN NOUVEL ARGUMENT @@ -165,6 +163,10 @@ if(defined $fic_rapport) { ########################################################################## # # LANCEMENT DES TESTS +# actuellement 3 options a gerer : +# -R : lancement uniquement des tests rapides +# -L : lancement uniquement des tests longs +# -rpt : lancement uniquement des tests ayant echoue du rapport $opt_rpt_fic_rapport # ########################################################################## ########################################################################## @@ -173,18 +175,19 @@ if(defined $fic_rapport) { #verification prealable de la presence du repertoire Rapport # > si existe deja mais est un fichier => arret avec message d erreur if(-f "./Rapport") { - die "\nErreur (prog:$NOM_PROG) : la presence d un repertoire de nom Rapport est necessaire mais le repertoire contient deja un fichier de nom Rapport...\n\n"; + die "\nErreur (prog:$NOM_PROG) : impossible de creer le repertoire Rapport car il existe deja un fichier de nom Rapport...\n\n"; } # > si absent => on le cree mkdir "./Rapport" if(not -e "./Rapport"); + #-------------------------------------------------------------------------- -# option -rpt => lancement uniquement des tests ayant echoue du rapport $fic_rapport (et sortie du programme) +# option -rpt => lancement uniquement des tests ayant echoue du rapport $opt_rpt_fic_rapport (et sortie du programme) #-------------------------------------------------------------------------- my @LISTE_TESTS_ECHEC; -if(defined $fic_rapport) { - open(FIC, "<$fic_rapport"); +if(defined $opt_rpt_fic_rapport) { + open(FIC, "<$opt_rpt_fic_rapport"); my $is_test_ECHEC; my $nom_repertoire_test; while() { @@ -199,7 +202,8 @@ if(defined $fic_rapport) { #si le mot ECHEC est trouve => on enregistre le repertoire (sauf si ca a deja ete fait precedemment) elsif(/ECHEC/) { push(@LISTE_TESTS_ECHEC, $nom_repertoire_test); - #dans la ligne suivante, on evite d enregistrer plusieurs fois un meme repertoire + #si le dernier element et l avant dernier element de la liste @LISTE_TESTS_ECHEC sont identiques, on supprime (pop) le + # dernier element pour eviter d enregistrer plusieurs fois un meme repertoire pop(@LISTE_TESTS_ECHEC) if($#LISTE_TESTS_ECHEC >= 1 and $LISTE_TESTS_ECHEC[-1] eq $LISTE_TESTS_ECHEC[-2]); } } @@ -209,7 +213,7 @@ if(defined $fic_rapport) { #si il n y a aucun test ECHEC dans @LISTE_TESTS_ECHEC => tant mieux! on affiche la bonne nouvelle et on exit if($#LISTE_TESTS_ECHEC == -1) { print "\n"; - print "Aucun test ECHEC n a ete trouve dans le fichier $fic_rapport ...\n\n"; + print "Aucun test ECHEC n a ete trouve dans le fichier $opt_rpt_fic_rapport ...\n\n"; print " - arret -\n"; exit; } @@ -228,7 +232,7 @@ if(defined $fic_rapport) { system("echo $rep_test >> Rapport/Liste_Tests_debugECHEC.txt"); } - #lancement des tests (dont le resultat s ecrit dans le rapport temporaire) + #lancement des tests (dont le resultat s ecrit dans le rapport temporaire Rapport/rapport_test.txt) foreach my $rep_test (@LISTE_TESTS_ECHEC) { system("./Perl/test.pl $rep_test $exeHZ"); } @@ -237,19 +241,16 @@ if(defined $fic_rapport) { system("mv -f Rapport/rapport_test.txt Rapport/rapport_test_debugECHEC.txt"); #affichage du rapport system("nedit Rapport/rapport_test_debugECHEC.txt &"); - } - - #on arrete le script - exit; - }#fin option -rpt + + #-------------------- -#lancement des tests rapides (sauf en cas d option -L) +#lancement des tests rapides (sauf en cas d option -L ou -rpt) #-------------------- -unless($is_opt_L) { +unless($is_opt_L or $is_opt_rpt) { #recherche des tests Test_R dans l arborescence (utilisation de find et suppression de chaque retour a la ligne avec chomp) my @LISTE_TESTS_R = map {chomp; $_} qx(find . -name "Test_R*" -type d); @@ -273,7 +274,7 @@ unless($is_opt_L) { system("echo $rep_test >> Rapport/Liste_Tests_R.txt"); } - #lancement des tests (dont le resultat s ecrit dans le rapport temporaire) + #lancement des tests (dont le resultat s ecrit dans le rapport temporaire Rapport/rapport_test.txt) foreach my $rep_test (@LISTE_TESTS_R) { system("./Perl/test.pl $rep_test $exeHZ"); } @@ -285,10 +286,13 @@ unless($is_opt_L) { } } + + + #-------------------- -#lancement des tests longs (sauf en cas d option -R) +#lancement des tests longs (sauf en cas d option -R ou -rpt) #-------------------- -unless($is_opt_R) { +unless($is_opt_R or $is_opt_rpt) { #recherche des tests Test_L dans l arborescence (utilisation de find et suppression de chaque retour a la ligne avec chomp) my @LISTE_TESTS_L = map {chomp; $_} qx(find . -name "Test_L*" -type d); @@ -312,7 +316,7 @@ unless($is_opt_R) { system("echo $rep_test >> Rapport/Liste_Tests_L.txt"); } - #lancement des tests (dont le resultat s ecrit dans le rapport temporaire) + #lancement des tests (dont le resultat s ecrit dans le rapport temporaire Rapport/rapport_test.txt) foreach my $rep_test (@LISTE_TESTS_L) { system("./Perl/test.pl $rep_test $exeHZ"); } @@ -333,9 +337,6 @@ unless($is_opt_R) { - - - ########################################################################## ########################################################################## ########################################################################## @@ -346,6 +347,13 @@ unless($is_opt_R) { ########################################################################## ########################################################################## +##################################################################################################### +#subroutine permettant de terminer proprement le script en cas de ctrl-z +##################################################################################################### +sub fin_script { + +} + ##################################################################################################### #subroutine permettant d ecrire une ligne de tirets de la largeur du terminal @@ -355,16 +363,17 @@ unless($is_opt_R) { # - print ou warn (suivant que l on souhaite afficher avec print (donc vers STDOUT) ou warn (donc vers STDERR) # sub afficher_ligne_tirets { - #utilisation de Term::ReadKey seulement si la librairie existe + my $funct_disp = shift; + ($funct_disp eq 'print') or ($funct_disp eq 'warn') or die "\nErreur (sub:afficher_ligne_tirets) : l argument d entree doit etre \"print\" ou \"warn\" (argument recu : $funct_disp)...\n\n"; + + #utilisation de Term::ReadKey pour connaitre la largeur du terminal en nombre de caracteres + # (seulement si la librairie existe. si non, la ligne de tirets aura une largeur de 78) my $nb_char_largeur_terminal = 78; if(check_install( module => 'Term::ReadKey')) { require Term::ReadKey; Term::ReadKey->import(qw(GetTerminalSize)); $nb_char_largeur_terminal = ( GetTerminalSize() )[0];#largeur du terminal en nombre de caracteres (via package Term::ReadKey) } - my $funct_disp = shift; - - my $ligne_tirets = ''; $ligne_tirets .= '-' for(1 .. $nb_char_largeur_terminal); @@ -381,7 +390,7 @@ sub afficher_ligne_tirets { # - nom de la commande # # en sortie : -# - chemin aboslu de la commande (0 si commande introuvable) +# - chemin absolu de la commande (0 si commande introuvable) # sub verif_commande { my $cmd = shift;#nom de la commande diff --git a/verifier_exeHZ.zsh b/verifier_exeHZ.zsh index 5f1278b..3cd1f87 100755 --- a/verifier_exeHZ.zsh +++ b/verifier_exeHZ.zsh @@ -1,4 +1,4 @@ -#!/bin/zsh +#!/usr/bin/env zsh ###-------------------------------- ### --- ATTENTION : script en zsh