[script bash] compter le nombre de caractères
the_moon
-
Skyll -
Skyll -
Encore une question pour le projet que je dois rendre bientôt (je suis dans un IUT d'informatique):
Comment pourais-je faire pour compter le nombre de "/" sur une ligne d'un fichier texte ?
Chaque ligne est en fait le chemin complet permetant d'acceder à un fichier, elle peut donc contenir des espaces si un dossier porte un nom de plusieurs mots.
j'ai pensé à 'wc' (word counter) mais je ne sais pas comment l'utiliser pour qu'il compte les /, et je ne sais pas s'il existe une autre commande pour compter les occurences d'un seul caractère dans une chaine donnée.
(j'arrive a selectionner la ligne voulue et à en récuperer des morceaux, mon problème est juste d'arriver à les compter)
Merci beaucoup !
Et merci à ceux qui ont répondu à toutes mes précédentes questions, ça m'a beaucoup aidé à avancer !
Comment pourais-je faire pour compter le nombre de "/" sur une ligne d'un fichier texte ?
Chaque ligne est en fait le chemin complet permetant d'acceder à un fichier, elle peut donc contenir des espaces si un dossier porte un nom de plusieurs mots.
j'ai pensé à 'wc' (word counter) mais je ne sais pas comment l'utiliser pour qu'il compte les /, et je ne sais pas s'il existe une autre commande pour compter les occurences d'un seul caractère dans une chaine donnée.
(j'arrive a selectionner la ligne voulue et à en récuperer des morceaux, mon problème est juste d'arriver à les compter)
Merci beaucoup !
Et merci à ceux qui ont répondu à toutes mes précédentes questions, ça m'a beaucoup aidé à avancer !
A voir également:
- [script bash] compter le nombre de caractères
- Ascii nombre de caractères - Guide
- Script vidéo youtube - Guide
- Caractères spéciaux - Guide
- Nombre de jours entre deux dates excel - Guide
- Nombre de caractères word - Guide
7 réponses
Bonsoir.
Y'a sans doute beaucoup de façon de faire ça
En voilà déjà une:
Nombre de champs dans la ligne courante: "NF"
Nombre de séparateurs de champ: "NF-1"
@+
Y'a sans doute beaucoup de façon de faire ça
En voilà déjà une:
PBG4:~ adrien$ cat test
/klsjdq
/qsd/qsdgfd
/zer/ghf/sdf
/zer/fgh/vcbb/ret
PBG4:~ adrien$ awk 'BEGIN{ FS="/" }{ print NF-1 }' test
1
2
3
4Séparateur de champ: "/"
Nombre de champs dans la ligne courante: "NF"
Nombre de séparateurs de champ: "NF-1"
@+
Merci beaucoup, je vais essayer ça !
Encore une question, qui me permettrait d'améliorer un peu mon proogramme:
Est-ce qu'il est possible de limiter le nombre de caractères lus par la commande 'read' ?
Je voudrais que l'utilisateur ne puisse taper qu'un nombre limité de caractères, par exemple 30, plutôt que de devoir couper un morceau du texte par la suite !
Merci !
Encore une question, qui me permettrait d'améliorer un peu mon proogramme:
Est-ce qu'il est possible de limiter le nombre de caractères lus par la commande 'read' ?
Je voudrais que l'utilisateur ne puisse taper qu'un nombre limité de caractères, par exemple 30, plutôt que de devoir couper un morceau du texte par la suite !
Merci !
Pas de problemes:
(cf man bash, section SHELL BUILTIN COMMANDS /read)
Bonne nuit!
-n nchars read returns after reading nchars characters rather than waiting for a complete line of input.
(cf man bash, section SHELL BUILTIN COMMANDS /read)
Bonne nuit!
Merci !
Bonne nuit à toi aussi, j'essayerai tout ça demain, et je pense que j'arriverai à tout finir avec ça.
Bonne nuit à toi aussi, j'essayerai tout ça demain, et je pense que j'arriverai à tout finir avec ça.
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Pour information :
si file vaut /home/toto/dir/foo.txt
${file##*/} vaut foo.txt ! Ce qui devrait répondre à la question.
Cordialement.
si file vaut /home/toto/dir/foo.txt
${file##*/} vaut foo.txt ! Ce qui devrait répondre à la question.
Cordialement.