utilisation d' /etc/passwd pour l'exemple

This commit is contained in:
jeanjack 2023-02-22 15:00:31 +01:00
parent 8c61d62c60
commit c1a2363b62
2 changed files with 38 additions and 43 deletions

View File

@ -24,7 +24,7 @@ Dans un environnement graphique ( sur un P.C par exemple ), on ouvre un terminal
Cet interface permet d'invoquer le logiciel à utiliser, et adapter son comportement sous la forme d'instruction. plutôt que d'ouvrir un navigateur de fichier (GUI) , aller cliquer dans chaque répertoire, pour enfin double cliquer sur le fichier fasta voulu afin de l'ouvrir, on peux le faire en shell de cette manière :
`more /home/jeanjack/build/maker/MWAS/data/pyu-protein.fasta`
`more /etc/passwd`
et le contenu du fichier s'affiche dans le terminal. Dans cet exemple, on utilise more, un logiciel permettant de consulter le contenu d'un long fichier dans la taille précise du terminal, et de naviguer dedans.
@ -111,17 +111,10 @@ Passons aux choses intéressantes : voyons plutôt sur le fichier fasta comment
Vu qu'on veux récupérer le nombre de séquence, on vas filtrer le contenu du fichier pour n'avoir que les lignes contenant un chevron :
```
$ grep ">" /home/jeanjack/build/maker/MWAS/data/pyu-protein.fasta
$ grep "root" /etc/passwd
root:x:0:0:root:/root:/bin/bash
[...]
>sp|Q9WU83|DPM1_CRIGR
>sp|Q9XG77|PSA6_TOBAC
>sp|Q9ZSB5|UBP10_ARATH
On a en sortie la liste des séquences. Maintenant, on veux des nombres !
Maintenant, on veux le nombre d'utilisateurs!
extrait du man de cat :
@ -138,11 +131,10 @@ DESCRIPTION
```
Vu qu'on a une ligne par séquence, on pourrait utiliser ça :
```
$ grep ">" pyu-protein.fasta | cat -n
[...]
1303 >sp|Q9WU83|DPM1_CRIGR
1304 >sp|Q9XG77|PSA6_TOBAC
1305 >sp|Q9ZSB5|UBP10_ARATH
$ cat -n /etc/passwd
[...]
53 _lxd:x:129:139::/var/lib/lxd/:/bin/false
```
Mais tout ça fait beaucoup d'informations inutile dans notre petite fenêtre à mon goût.
@ -166,8 +158,8 @@ DESCRIPTION
```
wc avec l'option -l ( compter le nombre de retour à la ligne) me paraît beaucoup plus approprié :
```
$ grep ">" pyu-protein.fasta | wc -l
1305
$ wc -l < /etc/passwd
53
```
On a exactement ce qu'on veux : le nombre de séquences. pas une information de plus, pas une de moins. en combinant deux outils qui font chacun une tache simple (filtrer et compter). Le tout réside dans la connaisance du panel d'outils à disposition, et la bonne lecture des manuels.

View File

@ -125,16 +125,24 @@ SHELL
Plutôt que de parcourir l'arborescence par des clics et enfin ouvrir le
fichier, on peux le faire directement:
$ more /home/jeanjack/build/maker/MWAS/data/pyu-protein.fasta
$ more /etc/passwd
root:x:0:0:root:/root:/bin/bash
daemon:x:1:1:daemon:/usr/sbin:/usr/sbin/nologin
bin:x:2:2:bin:/bin:/usr/sbin/nologin
sys:x:3:3:sys:/dev:/usr/sbin/nologin
sync:x:4:65534:sync:/bin:/bin/sync
games:x:5:60:games:/usr/games:/usr/sbin/nologin
man:x:6:12:man:/var/cache/man:/usr/sbin/nologin
lp:x:7:7:lp:/var/spool/lpd:/usr/sbin/nologin
mail:x:8:8:mail:/var/mail:/usr/sbin/nologin
news:x:9:9:news:/var/spool/news:/usr/sbin/nologin
uucp:x:10:10:uucp:/var/spool/uucp:/usr/sbin/nologin
proxy:x:13:13:proxy:/bin:/usr/sbin/nologin
www-data:x:33:33:www-data:/var/www:/usr/sbin/nologin
backup:x:34:34:backup:/var/backups:/usr/sbin/nologin
list:x:38:38:Mailing List Manager:/var/list:/usr/sbin/nologin
>FM_Phyra1_1:jgi|Phyra1_1|43043|gwEuk.18.6.1
MSDEEQDCCPLCMEELDITDKTFNACPCGYQVCLWCWHQIKNEYNALCPACRQPYAELSK
QKNPLDRDECQRKQKEKSERRSAAQAKHSTVNRKSLQNVRVMQRNLVYVIGLPVRFAEED
ILRSNECFGQYGKIVKAVVNKSHLSADRANATASAYITFANKEDALCCIVAIDGYYLDGS
MLRASFGTTKYCNFFLRNMQCNNPDCLYLHELGDDDDSFTKEEMQSGTRR
>FM_Phyra1_1:jgi|Phyra1_1|44351|gwEuk.21.14.1
KTRMSIDDIHAMVGSIRANVVNMRVTNIYDVQGQGDGGAAKTYILKLHQPPFPKVFLLLE
SGVRFHTSKYARDAKAGSALPSQFTMKLRKHLRGKRLSALTQLEGDRVVDLTFGQDALQC
On utilise le logiciel more, qui permet de consulter le contenu d'un
fichier page par page, avec une page faisant la taille de votre
@ -201,16 +209,10 @@ lignes comprenant un chevron
::: frame
$ grep ">" /home/abi/jeanjack/build/maker/MWAS/data/pyu-protein.fasta
[...]
$ grep "root" /etc/passwd
root:x:0:0:root:/root:/bin/bash
>sp|Q9WU83|DPM1_CRIGR
>sp|Q9XG77|PSA6_TOBAC
>sp|Q9ZSB5|UBP10_ARATH
On a en sortie la liste des séquences, mais il nous faut des nombres !
On a en sortie la ligne correspondant à root ! Maintenant on va regarder combien de comptes existent sur notre machine
$ man cat
NAME
@ -221,14 +223,14 @@ On a en sortie la liste des séquences, mais il nous faut des nombres !
-n, --number
number all output lines
ca pourrait fonctionner vu qu'on a une ligne par séquence
ca pourrait fonctionner vu qu'on a une ligne par utilisateur
:::
::: frame
grep ">" pyu-protein.fasta | cat -n
1303 >sp|Q9WU83|DPM1_CRIGR
1304 >sp|Q9XG77|PSA6_TOBAC
1305 >sp|Q9ZSB5|UBP10_ARATH
cat -n /etc/passwd
[...]
53 _lxd:x:129:139::/var/lib/lxd/:/bin/false
Ça fait beaucoup d'informations inutile par rapport au résultat attendu
( avoir un simple nombre ) !
@ -253,8 +255,9 @@ paraît beaucoup plus approprié
:::
::: frame
$ grep ">" pyu-protein.fasta | wc -l
1305
$ wc -l < /etc/passwd
53 /etc/passwd
On a exactement ce qu'on veux : le nombre de séquences. pas une
information de plus, pas une de moins. en combinant deux outils qui font