[totalement HS] Trouver les fichiers fortran avec qqch dans les colonnes superieures a 72

Le
giggzounet
Bonjour,

je suis totalement HSdésolé.

Bon je fais du fortran. ben oui ça existe tjs et dans le numérique on
aime bien çabon c'est simple mais la contrainte des 72 colonnes doit
être respectée (enfin en 77). Et apparemment le cochon qui a codé le
code que j'utilisesoit il ne savait passoit il a décidé de
m'embeter. Comme je suis fainéant (en bon informaticien que je suis),
j'aimerai taper une ligne de commande et savoir s'il y a du texte au
dela de la 72 ieme colonnes dans tel ou tel fichier.

Zavez une idée ????
Guillaume

--
Lisez la FAQ de la liste avant de poser une question :
http://wiki.debian.org/fr/FrenchLists Vous pouvez aussi ajouter le mot
``spam'' dans vos champs "From" et "Reply-To:"

Pour vous DESABONNER, envoyez un message avec comme objet "unsubscribe"
vers debian-user-french-REQUEST@lists.debian.org
En cas de soucis, contactez EN ANGLAIS listmaster@lists.debian.org
Vidéos High-Tech et Jeu Vidéo
Téléchargements
Vos réponses
Gagnez chaque mois un abonnement Premium avec GNT : Inscrivez-vous !
Trier par : date / pertinence
Alain Baeckeroot
Le #19758961
Le 15/07/2009 à 11:30, giggzounet a écrit :

Bonjour,

je suis totalement HS...désolé.

Bon je fais du fortran. ben oui ça existe tjs et dans le numérique on
aime bien ça...bon c'est simple mais la contrainte des 72 colonnes doit
être respectée (enfin en 77). Et apparemment le cochon qui a codé le
code que j'utilise...soit il ne savait pas...soit il a décidé de
m'embeter. Comme je suis fainéant (en bon informaticien que je suis...),
j'aimerai taper une ligne de commande et savoir s'il y a du texte au
dela de la 72 ieme colonnes dans tel ou tel fichier.



ca parait bizarre, le code ne devrait pas compiler. (a moins qu'"il" ose
rendre un code qui ne compile pas ?)

Ne serait ce pas un pb d'éditeur de texte qui converti les
tab en espaces , ou une taille de tab différente ?


Zavez une idée ????
Guillaume




pas subtil du tout
$ cat fichier.f77 |cut -c73- |sort -u |wc -l
si ce n'est pas 0 il y a qq chose.

Une regexp et un coup de perl devrait le faire (mais je suis un boulet
en regexp...)

my 2 cents
Alain

--
Lisez la FAQ de la liste avant de poser une question :
http://wiki.debian.org/fr/FrenchLists Vous pouvez aussi ajouter le mot
``spam'' dans vos champs "From" et "Reply-To:"

Pour vous DESABONNER, envoyez un message avec comme objet "unsubscribe"
vers
En cas de soucis, contactez EN ANGLAIS
giggzounet
Le #19759051
Alain Baeckeroot a écrit :
Le 15/07/2009 à 11:30, giggzounet a écrit :
Bonjour,

je suis totalement HS...désolé.

Bon je fais du fortran. ben oui ça existe tjs et dans le numérique on
aime bien ça...bon c'est simple mais la contrainte des 72 colonnes doit
être respectée (enfin en 77). Et apparemment le cochon qui a codé le
code que j'utilise...soit il ne savait pas...soit il a décidé de
m'embeter. Comme je suis fainéant (en bon informaticien que je suis...),
j'aimerai taper une ligne de commande et savoir s'il y a du texte au
dela de la 72 ieme colonnes dans tel ou tel fichier.



ca parait bizarre, le code ne devrait pas compiler. (a moins qu'"il" ose
rendre un code qui ne compile pas ?)

Ne serait ce pas un pb d'éditeur de texte qui converti les
tab en espaces , ou une taille de tab différente ?




ah oui possible. je n'y ai pas pensé. Le code compile sans problème et s
execute aussi sans probleme. C'est super mal codé alors je ne peux pas
utiliser les options de debuggage...le code s arrete tout de suite.
rhaaaaaaa misère!

Zavez une idée ????
Guillaume




pas subtil du tout
$ cat fichier.f77 |cut -c73- |sort -u |wc -l
si ce n'est pas 0 il y a qq chose.




bon je teste

Une regexp et un coup de perl devrait le faire (mais je suis un boulet
en regexp...)




merci en tout cas!

GiGGz

--
Lisez la FAQ de la liste avant de poser une question :
http://wiki.debian.org/fr/FrenchLists Vous pouvez aussi ajouter le mot
``spam'' dans vos champs "From" et "Reply-To:"

Pour vous DESABONNER, envoyez un message avec comme objet "unsubscribe"
vers
En cas de soucis, contactez EN ANGLAIS
Grégory Bulot
Le #19759041
Alain Baeckeroot 2009 12:07:34 +0200


pas subtil du tout
$ cat fichier.f77 |cut -c73- |sort -u |wc -l
si ce n'est pas 0 il y a qq chose.






erf j'avais encore moins subtil (script une ligne) :
L=1 ; cat < fichier | while true ; do read ligne ;
NBcar=${#ligne} ; if (( $NBcar > 73)) ; then echo "Ligne $L = $NBcar" ;
fi ; L=$(($L + 1)) ; done | more

--

Cordialement
Grégory BULOT

--
Lisez la FAQ de la liste avant de poser une question :
http://wiki.debian.org/fr/FrenchLists Vous pouvez aussi ajouter le mot
``spam'' dans vos champs "From" et "Reply-To:"

Pour vous DESABONNER, envoyez un message avec comme objet "unsubscribe"
vers
En cas de soucis, contactez EN ANGLAIS
Alain Baeckeroot
Le #19759131
Le 15/07/2009 à 12:20, giggzounet a écrit :
>> j'aimerai taper une ligne de commande et savoir s'il y a du texte au
>> dela de la 72 ieme colonnes dans tel ou tel fichier.
>
> ca parait bizarre, le code ne devrait pas compiler. (a moins qu'"il" ose
> rendre un code qui ne compile pas ?)
>
> Ne serait ce pas un pb d'éditeur de texte qui converti les
> tab en espaces , ou une taille de tab différente ?
>

ah oui possible. je n'y ai pas pensé. Le code compile sans problème e t s
execute aussi sans probleme.


ben alors le code est valide (syntaxiquement) et le contenu
des colonnes 73+ est bien un commentaire

C'est super mal codé alors je ne peux pas
utiliser les options de debuggage...


avec quel compilateur ?
? pourquoi ? ajouter -g (ou autre) ne marche pas ?

le code s arrete tout de suite.
rhaaaaaaa misère!



>> Zavez une idée ????



Contacter l'auteur du code ?
au moins pour savoir quel compilateur il emploie et
ses options de compilation ?

Alain

--
Lisez la FAQ de la liste avant de poser une question :
http://wiki.debian.org/fr/FrenchLists Vous pouvez aussi ajouter le mot
``spam'' dans vos champs "From" et "Reply-To:"

Pour vous DESABONNER, envoyez un message avec comme objet "unsubscribe"
vers
En cas de soucis, contactez EN ANGLAIS
giggzounet
Le #19759361
Alain Baeckeroot a écrit :
Le 15/07/2009 à 12:20, giggzounet a écrit :
j'aimerai taper une ligne de commande et savoir s'il y a du texte au
dela de la 72 ieme colonnes dans tel ou tel fichier.


ca parait bizarre, le code ne devrait pas compiler. (a moins qu'"il" ose
rendre un code qui ne compile pas ?)

Ne serait ce pas un pb d'éditeur de texte qui converti les
tab en espaces , ou une taille de tab différente ?



ah oui possible. je n'y ai pas pensé. Le code compile sans problème et s
execute aussi sans probleme.


ben alors le code est valide (syntaxiquement) et le contenu
des colonnes 73+ est bien un commentaire




ben non. c'est po un commentaire. ce sont les argments de la sub. et ça
gueule po du tout avec gfortran. bizarre!

C'est super mal codé alors je ne peux pas
utiliser les options de debuggage...


avec quel compilateur ?
? pourquoi ? ajouter -g (ou autre) ne marche pas ?

le code s arrete tout de suite.
rhaaaaaaa misère!



Zavez une idée ????







Contacter l'auteur du code ?
au moins pour savoir quel compilateur il emploie et
ses options de compilation ?




le code est un gros code de calcul structure qui n'est plus développé.
donc je n'ai pas de "support". et malheureusment il employait ifort donc
pour la comparaison...mais c'est difficile.

mais bon t'as ligne a l'air de fonctionner, je me fais un script qui
automatise toussa et je me couche content!
GiGGz

--
Lisez la FAQ de la liste avant de poser une question :
http://wiki.debian.org/fr/FrenchLists Vous pouvez aussi ajouter le mot
``spam'' dans vos champs "From" et "Reply-To:"

Pour vous DESABONNER, envoyez un message avec comme objet "unsubscribe"
vers
En cas de soucis, contactez EN ANGLAIS
giggzounet
Le #19760401
Grégory Bulot a écrit :
Alain Baeckeroot 2009 12:07:34 +0200


pas subtil du tout
$ cat fichier.f77 |cut -c73- |sort -u |wc -l
si ce n'est pas 0 il y a qq chose.






erf j'avais encore moins subtil (script une ligne) :
L=1 ; cat < fichier | while true ; do read ligne ;
NBcar=${#ligne} ; if (( $NBcar > 73)) ; then echo "Ligne $L = $NBcar" ;
fi ; L=$(($L + 1)) ; done | more




voilà ou j'en suis :
#!/bin/sh
for file in *.f ;do
L=1
cat $file | grep -v "C" | while read ligne
do
NBcar=${#ligne}
if [ "$NBcar" -ge "73" ]; then
echo -e
'E[34;40m'"33[1m++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++33[0m";
tput sgr0
echo -e
'E[34;40m'"33[1m------------------------------------------------------------------------33[0m";
tput sgr0
echo -e 'E[34;40m'"33[1mfile : $file : Line $L = $NBcar33[0m";
tput sgr0
echo -e
'E[34;40m'"33[1m------------------------------------------------------------------------33[0m";
tput sgr0
echo -e
'E[34;40m'"33[1m++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++33[0m";
tput sgr0
echo " "
echo "Line :"
echo $ligne
echo " "
echo " "
echo " "
sleep 1
fi
L=$(($L + 1))
done
done
exit



ça marchait pas avec "while true ; do read ligne ;", il faut mettre
"while read ligne; do".

Sinon encore une question je veux eviter de tester les commentaires,
d'ou pour l'instant mon "cat $file | grep -v "C"". mais c'est moche et
surtout assez dangereux car je zappe tous les CALL par exemple...

je cherche donc une regexp qui teste sur la premiere colonne. une idée ?

Merci





--
Lisez la FAQ de la liste avant de poser une question :
http://wiki.debian.org/fr/FrenchLists Vous pouvez aussi ajouter le mot
``spam'' dans vos champs "From" et "Reply-To:"

Pour vous DESABONNER, envoyez un message avec comme objet "unsubscribe"
vers
En cas de soucis, contactez EN ANGLAIS
giggzounet
Le #19760371
giggzounet a écrit :
Grégory Bulot a écrit :
Alain Baeckeroot 2009 12:07:34 +0200


pas subtil du tout
$ cat fichier.f77 |cut -c73- |sort -u |wc -l
si ce n'est pas 0 il y a qq chose.





erf j'avais encore moins subtil (script une ligne) :
L=1 ; cat < fichier | while true ; do read ligne ;
NBcar=${#ligne} ; if (( $NBcar > 73)) ; then echo "Ligne $L = $NBcar" ;
fi ; L=$(($L + 1)) ; done | more




voilà ou j'en suis :
#!/bin/sh
for file in *.f ;do
L=1
cat $file | grep -v "C" | while read ligne
do
NBcar=${#ligne}
if [ "$NBcar" -ge "73" ]; then
echo -e
'E[34;40m'"33[1m++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++33[0m";
tput sgr0
echo -e
'E[34;40m'"33[1m------------------------------------------------------------------------33[0m";
tput sgr0
echo -e 'E[34;40m'"33[1mfile : $file : Line $L = $NBcar33[0m";
tput sgr0
echo -e
'E[34;40m'"33[1m------------------------------------------------------------------------33[0m";
tput sgr0
echo -e
'E[34;40m'"33[1m++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++33[0m";
tput sgr0
echo " "
echo "Line :"
echo $ligne
echo " "
echo " "
echo " "
sleep 1
fi
L=$(($L + 1))
done
done
exit



ça marchait pas avec "while true ; do read ligne ;", il faut mettre
"while read ligne; do".

Sinon encore une question je veux eviter de tester les commentaires,
d'ou pour l'instant mon "cat $file | grep -v "C"". mais c'est moche et
surtout assez dangereux car je zappe tous les CALL par exemple...

je cherche donc une regexp qui teste sur la premiere colonne. une idée ?

Merci





bon je crois que je l'ai :
cat $file | grep -iv -E ^C

ou un truc du genre :)

Bye

--
Lisez la FAQ de la liste avant de poser une question :
http://wiki.debian.org/fr/FrenchLists Vous pouvez aussi ajouter le mot
``spam'' dans vos champs "From" et "Reply-To:"

Pour vous DESABONNER, envoyez un message avec comme objet "unsubscribe"
vers
En cas de soucis, contactez EN ANGLAIS
Publicité
Poster une réponse
Anonyme