This shows you the differences between two versions of the page.
sde2:teme:tema_fr_1_rust [2022/03/12 14:19] alexandru.radovici |
sde2:teme:tema_fr_1_rust [2023/03/14 11:38] (current) cristiana.andrei [Informations générales] |
||
---|---|---|---|
Line 4: | Line 4: | ||
<note important> | <note important> | ||
- | Date limite: **27 Mars, 23:59**\\ | + | Date limite: **29 Mars, 23:59**\\ |
Points: **1 point** de la note finale\\ | Points: **1 point** de la note finale\\ | ||
- | Lien: [[https://classroom.github.com/a/eGhf5LvX|Devoir 1]]\\ | + | Lien: [[https://classroom.github.com/a/NENt3jMV|Devoir 1]]\\ |
Télécharger en retard: **1 points / jour** (maximum 4 jours)\\ | Télécharger en retard: **1 points / jour** (maximum 4 jours)\\ | ||
</note> | </note> | ||
Line 21: | Line 21: | ||
- Le devoir doit être implémenté en Rust et seulement en utilisant des fonctions de la bibliothèque standard Rust. Toute autre implémentation conduira à l'annulation du devoir.(**0 points**) | - Le devoir doit être implémenté en Rust et seulement en utilisant des fonctions de la bibliothèque standard Rust. Toute autre implémentation conduira à l'annulation du devoir.(**0 points**) | ||
+ | <note> | ||
+ | Exception: Vous pouvez utiliser la bibliotheque [[https://docs.rs/chrono/latest/chrono/|chrono]] pour l'affichage de date et heure. | ||
+ | </note> | ||
===== Copiage ===== | ===== Copiage ===== | ||
Line 47: | Line 50: | ||
./rustybox cp file folder | ./rustybox cp file folder | ||
</code> | </code> | ||
+ | |||
+ | <note> | ||
+ | Vous pouvez trouver les tests au chemin /home/codespace/devoir-1-tests dans votre GitHub Codespace. | ||
+ | </note> | ||
===== Commandes acceptées ===== | ===== Commandes acceptées ===== | ||
Line 133: | Line 140: | ||
./rustybox rmdir my_empty_directory1 my_empty_directory2 | ./rustybox rmdir my_empty_directory1 my_empty_directory2 | ||
</code> | </code> | ||
+ | |||
* **rm [options] fichiers/directoires** - Supprime les fichiers ou les directoires passés comme arguments. Sans options, il ne peut pas supprimer des directoires. S'il recoit comme parametres aussi des fichiers, que des directoires, il va supprimer seulement les fichiers et il va retourner la valeur -70 (la valeaur 186 sera affiché dans le terminal). ([[https://linux.die.net/man/1/rm]]) | * **rm [options] fichiers/directoires** - Supprime les fichiers ou les directoires passés comme arguments. Sans options, il ne peut pas supprimer des directoires. S'il recoit comme parametres aussi des fichiers, que des directoires, il va supprimer seulement les fichiers et il va retourner la valeur -70 (la valeaur 186 sera affiché dans le terminal). ([[https://linux.die.net/man/1/rm]]) | ||
* **-r, -R, %%--%%recursive** - Supprime les idrectoires et leur contenu | * **-r, -R, %%--%%recursive** - Supprime les idrectoires et leur contenu | ||
Line 146: | Line 154: | ||
* ** ls [options] [directoire]** - Liste le contenu di directoire. Si on ne spécifie aucun directoire, il va lister le contenu du directoire courant; sans l'option **-a/-all**, on n'affiche pas les fichiers/directoires cachés (dont le nom commence par . ). S'il recoit comme parametre le chemin vers un fichier, il va afficher le fichier. Chaque fichier/directoire sera affiché sur une nouvelle ligne ([[https://linux.die.net/man/1/ls]]). En cas d'erreur il renvoie la valeur -80 (la valeaur 176 sera affiché dans le terminal). | * ** ls [options] [directoire]** - Liste le contenu di directoire. Si on ne spécifie aucun directoire, il va lister le contenu du directoire courant; sans l'option **-a/-all**, on n'affiche pas les fichiers/directoires cachés (dont le nom commence par . ). S'il recoit comme parametre le chemin vers un fichier, il va afficher le fichier. Chaque fichier/directoire sera affiché sur une nouvelle ligne ([[https://linux.die.net/man/1/ls]]). En cas d'erreur il renvoie la valeur -80 (la valeaur 176 sera affiché dans le terminal). | ||
- | * **-l** - Afficher toutes les informations sur les fichiers | ||
* **-a, %%--%%all** - Affiche aussi les fichiers/directoires cachés, dont le nom commence par "." | * **-a, %%--%%all** - Affiche aussi les fichiers/directoires cachés, dont le nom commence par "." | ||
* **-R, %%--%%recursive** - Liste le contenu de chaque directoire de l'hiérarchie. Pour les fichiers/directoires qui ne se trouvent pas directement dans le point de lecture, il va afficher le chemin complet, ex: output/test/file. | * **-R, %%--%%recursive** - Liste le contenu de chaque directoire de l'hiérarchie. Pour les fichiers/directoires qui ne se trouvent pas directement dans le point de lecture, il va afficher le chemin complet, ex: output/test/file. | ||
Line 169: | Line 176: | ||
f1 | f1 | ||
f2 | f2 | ||
- | $ ./rustybox ls -l | ||
- | drwxr-xr-x alexandru staff 960 Feb 12 22:40 Desktop | ||
- | -rw-r--r-- alexandru staff 372944 Nov 29 2020 Title Hello Wyliodrin STUDIO.jpg | ||
- | |||
- | # file_type (-, l - link, d - directory) properties user group size modified_date name | ||
- | $ ./rustybox ls -l Desktop | ||
- | drwxr-xr-x alexandru staff 960 Feb 12 22:40 Desktop | ||
</code> | </code> | ||
Line 218: | Line 218: | ||
Pour plus de détails sur le mode de fonctionnement de chaque commande, vous pouvez consulter le manuel spécifique du terminal de Linux: **man commande**. La commande peut etre exécutée en chaque terminal d'un système Linux ou dans le lien attaché a la commande. | Pour plus de détails sur le mode de fonctionnement de chaque commande, vous pouvez consulter le manuel spécifique du terminal de Linux: **man commande**. La commande peut etre exécutée en chaque terminal d'un système Linux ou dans le lien attaché a la commande. | ||
+ | ===== Bonus ===== | ||
+ | * ** grep [-i] regex filename ** - Répertorie toutes les lignes du fichier qui contiennent l'expression régulière. | ||
+ | * **-i** - Répertorie toutes les lignes du fichier qui ne contiennent pas l'expression régulière. | ||
+ | **Exemple:** | ||
+ | |||
+ | <code bash> | ||
+ | $ ./rustybox grep '[0-9]+' File | ||
+ | this line 99 | ||
+ | this line is another 7 | ||
+ | </code> | ||
+ | |||
+ | * ** ls ** | ||
+ | * **-l** - Afficher toutes les informations sur les fichiers | ||
+ | <code> | ||
+ | $ ./rustybox ls -l | ||
+ | drwxr-xr-x alexandru staff 960 Feb 12 22:40 Desktop | ||
+ | -rw-r--r-- alexandru staff 372944 Nov 29 2020 Title Hello Wyliodrin STUDIO.jpg | ||
+ | |||
+ | # file_type (-, l - link, d - directory) properties user group size modified_date name | ||
+ | $ ./rustybox ls -l Desktop | ||
+ | drwxr-xr-x alexandru staff 960 Feb 12 22:40 Desktop | ||
+ | </code> |