Des infos sur différentes commandes du shell
Résolu
Bonjour,
En feuilletant les anales d'examen de Maths/info, je suis tombé sur plusieurs questions qui m'ont fait peur x)
Je ne comprend pas les commandes suivantes (même si je les ai exécutées):
find / \! -name "*.c" -print
find ~ -regex ".*[A-Z].*" -exec ls -l {} \;
find /home -name "*~" -mmin +240 -exec echo {} \;
De même je bloque sur 3 questions (toujours concernant find):
1) En utilisant la commande find, écrivez une ligne de commande affichant tous les répertoires de votre arborescence personnelle qui ont été crées il y a moins d'une heure.
2) En utilisant la commande find, écrivez une ligne de commande effaçant tous les fichiers réguliers vous appartenant, dont la taille est supérieure à 1Go. Faites en sorte qu'il y ait une demande de confirmation avant l'effacement de chaque fichier.
3) Écrivez une commande permettant d'enlever à tous les fichiers réguliers vous appartenant, le droit d'exécution pour le groupe propriétaires et le reste du monde. Faites en sorte que cette commande n'agisse que sur les fichiers dont le mode octal n'est pas 777.
Voilà, j'aimerai des explications détaillées (et des frites m'sieur). Merci d'avance à ceux qui pourront m'éclairer ^^
En feuilletant les anales d'examen de Maths/info, je suis tombé sur plusieurs questions qui m'ont fait peur x)
Je ne comprend pas les commandes suivantes (même si je les ai exécutées):
find / \! -name "*.c" -print
find ~ -regex ".*[A-Z].*" -exec ls -l {} \;
find /home -name "*~" -mmin +240 -exec echo {} \;
De même je bloque sur 3 questions (toujours concernant find):
1) En utilisant la commande find, écrivez une ligne de commande affichant tous les répertoires de votre arborescence personnelle qui ont été crées il y a moins d'une heure.
2) En utilisant la commande find, écrivez une ligne de commande effaçant tous les fichiers réguliers vous appartenant, dont la taille est supérieure à 1Go. Faites en sorte qu'il y ait une demande de confirmation avant l'effacement de chaque fichier.
3) Écrivez une commande permettant d'enlever à tous les fichiers réguliers vous appartenant, le droit d'exécution pour le groupe propriétaires et le reste du monde. Faites en sorte que cette commande n'agisse que sur les fichiers dont le mode octal n'est pas 777.
Voilà, j'aimerai des explications détaillées (et des frites m'sieur). Merci d'avance à ceux qui pourront m'éclairer ^^
A voir également:
- Des infos sur différentes commandes du shell
- Classic shell - Télécharger - Personnalisation
- Invite de commandes - Guide
- Commandes terminal mac - Guide
- Classic shell c'est quoi ✓ - Forum Windows 8 / 8.1
- 'Pip' n'est pas reconnu en tant que commande interne ou externe, un programme exécutable ou un fichier de commandes. ✓ - Forum Python
3 réponses
Bah déjà il faut lire le man de la commande find (man find), et ensuite il faut regarder vite fait un cours sur les expressions régulières (ou par exemple man grep).
http://pwet.fr/man/linux/commandes/find/
http://pwet.fr/man/linux/commandes/grep/
Pour faire simple, la commande find permet de lister des fichiers qui respectent certains critères (sur la date, sur le nom qui doit respecter un "motif" (l'expression régulière) ), et une fois ces chemins isolés, de leur appliquer une commande avec l'option -exec.
Si tu prends le temps de lire le man de find, tu devrais rapidement comprendre le rôle des trois commandes qui t'échappent. Tu verras que les trois commandes que tu dois retrouver sont du même genre.
Bonne chance
http://pwet.fr/man/linux/commandes/find/
http://pwet.fr/man/linux/commandes/grep/
Pour faire simple, la commande find permet de lister des fichiers qui respectent certains critères (sur la date, sur le nom qui doit respecter un "motif" (l'expression régulière) ), et une fois ces chemins isolés, de leur appliquer une commande avec l'option -exec.
Si tu prends le temps de lire le man de find, tu devrais rapidement comprendre le rôle des trois commandes qui t'échappent. Tu verras que les trois commandes que tu dois retrouver sont du même genre.
Bonne chance