TP1 Programmation Shell module EC 521 Web viewtoto — Quelle option permet de modifier...

7
TP1 Programmation Shell module EC 521 Exercice, correction 2015 DOMINGUES ALMEIDA Nicolas Microsoft 01/01/2015

Transcript of TP1 Programmation Shell module EC 521 Web viewtoto — Quelle option permet de modifier...

TP1 Programmation Shell module EC 521Exercice, correction

DOMINGUES ALMEIDA NicolasMicrosoft

01/01/20152015

[TP1 Programmation Shell module EC 521] 01 janvier 2015

Exercice 25

— Créez un fichier premiertexte contenant une ou deux phrases.

Touch premiertexte ensuite nano premiertexte ( ou directement nano premiertexte)

— Quelle est la taille de premiertexte ?

Ls –l premiertexte (36)

— Éditez PREMIERTEXTE. Que constatez-vous ?

Nano ou vi premiertexte (on constate que la taille a augmenté)

Exercice 26

— Faites une copie de premiertexte appelée double.

Cp premiertexte double

— Comparez les tailles de premiertexte et de double

Ls –l (même taille)

— Renommez double en introduction.

Mv double introduction

— Quelle différence y a-t-il entre mv double introduction et cp double introduction ?

Mv sert à renomer ou déplacer

Cp sert à copier

Exercice 27

— Créez un répertoire essai/

Mkdir essai

— Déplacez introduction dans essai/.

Mv introduction essai/

— Faites une copie de premiertexte appelée copie, et placez-la également dans essai/.

Cp premiertexte essai/copie

— Affichez une liste de ce que contient essai/.

Ls –l essai/

— Essayez de détruire essai/. Que se passe-t-il ? Que faut-il faire pour détruire un répertoire ?

On obtient une erreur pour pouvoir supprimer le dossier on fait rm –r essai/

— Détruisez tout ce que contient essai/.

[TP1 Programmation Shell module EC 521] 01 janvier 2015

rm –r essai/*

— Détruisez essai/.

rm –r essai/

Exercice 28

— Changez les droits d’un fichier fic1 pour que tous ceux de votre groupe puissent écrire dedans.

Chmod g+w fic1

— Donnez en une seule ligne le droit d’exécution à tous les utilisateurs d’un fichier script qui n’a

jusqu’alors que des droits standards (-rw-r- - r- - ).

Touch prscript.sh

Chmod a+x prscript .sh

— Le fichier toto a les droits suivants : -rwxr- - r- - . Modifiez-en les droits en une ligne de

commande de sorte que le propriétaire n’ait plus que le droit de lecture.

Chmod u-w-x toto

— Modifier les droits du fichier toto (-rwxr- - r- - ) de sorte que le groupe et les autres

utilisateurs aient les mêmes droits que le propriétaire.

Chmod g+w+x , o+w+x toto

— Quelle option permet de modifier récursivement les droits d’un répertoire et des fichiers qu’il

contient ?

-r (s’applique à ce qui a à l’interieur)

— Quelle option de mkdir permet de créer un répertoire en spécifiant les droits sur ce répertoire

? mkdir –m 777 titi

— Affichez et interprétez les droits de /usr/sbin/mount.

-rwx rwx rwx (u , g, o )

Exercice 29

[TP1 Programmation Shell module EC 521] 01 janvier 2015

— Cherchez dans toute l’arborescence les fichiers dont le nom se termine par .c, redirigez-les erreurs vers la “poubelle” /dev/null

Find / –name ’’*.c’’ 2 > /dev/null/ 

a.commençant par X ou x.

Find –name ‘’[x,X]* ‘’

b. Dont les noms ne contiennent pas de chiffre.

Find ! –name  ‘’*[0-9]* ‘’

— Chercher dans /usr les fichiers dont la taille dépasse 1Mo (2000 blocs de 500Ko) et dont les

droits sont fixés à 755 (-rwxr-xr-x).

Find /usr/ -size +2000 -perm 755 -print

— Combien il y a de fichiers dans toute l’arborescence vous appartenant et ayant les droits fixés

à 666 (-rw-rw-rw-).

Find / -perm 666 2> /dev/null | wc -l

— Trouver tous les fichiers core dans l’arborescence et supprimez-les (après confirmation).

Find –name ‘core.*’ 2> /dev/null

Exercice 30

— Copiez le fichier /etc/passwd dans votre “home directory”. Editez uniquement les champs

contenant le login et le “home directory”.

Cp /etc/passwd /export/home/linux07 Cut –d : f1,6 passwd

— Triez passwd sur le nom

Sort –t : +0-1 passwd

— Extraire les noms de login et UID puis triez suivant les UID, le tout en une seule commande ;

vous dirigerez le tout vers un fichier

cut –d : -f1,3 passwd | sort –t : -n > UID

— Dans le fichier de résultat précédent remplacer ’:’ par un espace ’’.

Cat UID | tr –s ‘:‘ ‘ ‘

— Éditez les cinq dernières lignes du fichier. Tail -5 UID

— Éditez les cinq premiers caractères du fichier.

[TP1 Programmation Shell module EC 521] 01 janvier 2015

Head -5 UID

Exercice 31

— Créer un répertoire essai-grep dans votre home directory. Dans ce répertoire créer les fichiers suivants tomate poire pomme cerise Fraise fraise courgette POMME3 afraise

Éditez les fichiers (sortie de la commande ls redirigée vers grep) avec les critères sur leur nom suivant :

Mkdir essai-grep ; touch tomate pomme cerise Fraise …

— Le nom doit être Fraise ou fraise

Ls [f,F]raise

— se est en fin de nom

Ls *se

— ai est présent dans le nom

Ls *ai*

— Nom contenant un chiffre numérique

Ls *[0-9]*

— Nom contenant la chaîne mm ou MM

Ls *[mm,MM]*

Exercice 32

— Copiez le fichier /etc/passwd dans votre home directory. Editez la ligne commençant par votre nom de login.

Cat passwd | grep ‘’^root’’

— Dans le fichier passwd qui est dans votre home directory, éditez les lignes commençant par des noms de login ne contenant pas de chiffre.

Cat passwd | grep ‘’^[^0-9][^0-9]*’’

— Éditez les lignes du fichier passwd commençant par des noms de login de 3 ou 4 caractères.

Cat passwd | grep ‘’^.\{1,3\} :’’

Exercice 33

— Créez un fichier droit dans le répertoire essai_droit. Par défaut ce fichier a les droits 644 (rw-r- - r- - ) . En partant du répertoire courant, pour chaque commande de l’exercice précédent, essayez d’accéder au répertoire essai_droit (commande cd), de faire un ls dans essai_droit et de modifier le fichier avec un éditeur quelconque (vi ou emacs par exemple).

[TP1 Programmation Shell module EC 521] 01 janvier 2015

— Tapez la commande umask, de manière à ce que les fichiers lors de leur création aient par findéfaut les droits 640 (rw-r- - - - -), et les répertoires 750 (rwxr-x- - -).

Pour les fichier 666-640 = 026 donc umask 026 Pour les répertoire 777-750=027 donc umask 027

Exercice 34

— Afficher le nombre de sessions ouvertes (c-à-d connexions) sur la machine tout en générant le détail de ses connexions dans le fichier connectes.

W last | grep still

— Afficher les L lignes qui entourent la ligne numéro N d’un fichier F. Utiliser cette méthode pour afficher une partie du texte qui entoure la ligne où se trouve une chaîne S qu’on cherche dans un fichier F (utiliser la commande grep).

Head –n 2 coucou | tail –n 4

— Copier sur une clé USB tous les fichiers .sql modifiés ce jour.

Exercice 35

— Écrire une commande pour exécuter le script traitement à 16h15 le 24 janvier 2002, sachant

que nous sommes en octobre 2001.

Exercice 36 Exécuter le script traitement se trouvant dans bin de votre répertoire de connexion :

— Le Vendredi à 17h00

— La semaine prochaine au même moment

7

— Deux jours plus tard