Précédent   Forum des professionnels en informatique > Systèmes > Linux > Applications > Shell
Shell Vos questions sur l'utilisation des commandes shell
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 18/10/2007, 17h23   #1
Membre du Club
 
Inscription : avril 2006
Messages : 159
Détails du profil
Informations personnelles :
Localisation : France, Isère (Rhône Alpes)

Informations forums :
Inscription : avril 2006
Messages : 159
Points : 43
Points : 43
Par défaut [script ksh] word count

Bonjour,
Je pense que je me suis trompé de forum mais je n'arrive pas a trouvé une rubrique script sur le site... (Peu être dans linux mais les scripts ne sont pas forcement utilisé que sur linux)
Mon script étant en rapport avec une base de données je le met la.

J'utilise un script ksh pour lancer ma requête sql.
Je veux compter le nombre de ligne de mon fichier csv créée par la requête mais je ne veut pas comptabilisé la première ligne.

je fait donc un :
Code :
nbligne=`wc -l $ATTENTES_NAME | cut -c 1-8`
mais je voudrait faire un -1, comment faire ??

Ca doit être très simple mais je n'arrive pas a trouver comment faire sur internet.
Merci de votre aide.
hokidoki est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 18/10/2007, 17h28   #2
Modérateur
 
Avatar de al1_24
 
Homme Alain
Ingénieur d'études décisionnel
Inscription : mai 2002
Messages : 4 451
Détails du profil
Informations personnelles :
Nom : Homme Alain
Âge : 51
Localisation : France, Val de Marne (Île de France)

Informations professionnelles :
Activité : Ingénieur d'études décisionnel
Secteur : Conseil

Informations forums :
Inscription : mai 2002
Messages : 4 451
Points : 7 564
Points : 7 564
Comme ça :
Code :
nbligne=$(( $(wc -l $ATTENTES_NAME | cut -c 1-8) - 1 ))
__________________
Modérateur Langage SQL
Règles du forum Langage SQL à lire par tous, N'hésitez pas à consulter les cours SQL
N'oubliez pas le bouton et pensez aux balises [code]
Si une réponse vous a aidé à résoudre votre problème, n'oubliez pas de voter pour elle en cliquant sur
al1_24 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 18/10/2007, 19h54   #3
Modérateur
 
Avatar de ggnore
 
Inscription : juillet 2004
Messages : 2 246
Détails du profil
Informations personnelles :
Âge : 33

Informations forums :
Inscription : juillet 2004
Messages : 2 246
Points : 1 904
Points : 1 904
Citation:
Envoyé par al1_24 Voir le message
Comme ça :
Code :
nbligne=$(( $(wc -l $ATTENTES_NAME | cut -c 1-8) - 1 ))
Code :
nbligne=$[( $(wc -l $ATTENTES_NAME | cut -c 1-8) - 1 )]
Avec des crochets plutôt, non ? J'ai pas de linux sous la main
__________________
Toutes les vertus des hommes se perdent dans l’intérêt comme les fleuves se perdent dans la mer.
ggnore est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 19/10/2007, 09h39   #4
Membre du Club
 
Inscription : avril 2006
Messages : 159
Détails du profil
Informations personnelles :
Localisation : France, Isère (Rhône Alpes)

Informations forums :
Inscription : avril 2006
Messages : 159
Points : 43
Points : 43
La première solution de al etait la bonne.
Je ne savait pas que l'on pouvait pouvait mettre des parenthèse après le $, je pensait que c'etait des acoolade.
Merci, ca fait exactement ce que je veut.
hokidoki est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 19/10/2007, 09h58   #5
Modérateur
 
Avatar de ggnore
 
Inscription : juillet 2004
Messages : 2 246
Détails du profil
Informations personnelles :
Âge : 33

Informations forums :
Inscription : juillet 2004
Messages : 2 246
Points : 1 904
Points : 1 904
est pareil que
Et là je viens d'apprendre que
Code :
$[ monexpressionarithmétique ]
était pareil que
Code :
$(( monexpressionarithmétique ))
__________________
Toutes les vertus des hommes se perdent dans l’intérêt comme les fleuves se perdent dans la mer.
ggnore est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 21/10/2007, 17h55   #6
LLB
Membre Expert
 
Inscription : mars 2002
Messages : 946
Détails du profil
Informations forums :
Inscription : mars 2002
Messages : 946
Points : 1 085
Points : 1 085
Je recommande d'utiliser $(( )) plutôt que $[ ], car c'est beaucoup plus portable. Je ne connaissais pas cette 2e écriture, mais elle est refusée par de nombreux shells.

Et je préfère largement $( ) à ` ` pour des raisons de lisibilité (en particulier quand il y a d'autres quotes), et parce que ça peut s'imbriquer.
LLB est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 11h30.


 
 
 
 
Partenaires

Hébergement Web