Video shell Programme est texte ecrit par un langage de programmation Mettre le

Video shell Programme est texte ecrit par un langage de programmation Mettre le texte dans un fichier et le donner un logiciel compilateur ou de manière interactif (avec le terminal ‘ecriver vos commandes ‘) Pour connaitre le shell utilise/La commandesqui interprète et interagit avec moi lors d’écriture : echo $SHELL OU /bin/bash (variable d’envirenement) env commande ( affiche les variables env ) Le shell peut servir d’editeur de la ligne de commande , cad possible d’utilise les fleches de direction pour deplacer le curseur sur la ligne de commande . Les comm shell sont des fichiers exécutables qui se Trouve /bin Echo mama aff mama Echo $mama aff sanae Créer une variable :Gl= « lili » Script S’exécute delà démarrage .bash_profil / login 000 Pour la deconnexion on utilise ,,,,logout Variable d’envirenement User,pid,home,path,shell echo $ 0 bash script.sh ou sh script.sh echo{ a..z} avec sh et bash Le sha - bang ( # ! ) # ! / bin / bash ou / bin / sh ou # ! / usr / bin / php(le chemain du nom exacte) $ PATH PATH " " DANS .bashrc(- PATH=$ PATH " : / Bureau / MesScripts(metter le path (path contient le chemain declarer de mon envirenement) Nom fonction $* contient tous les arguments passés à la $# contient nombre d'arguments $? contient le code de retour de la dernière cpmmande executee $n contient le nom du script contient l'argument n , nétant un nombre $ ! contient le PID de la dernière commande lancée $0 contient le nom du script echo $ ? aff 127 c’est code erreur cad n’est bien passer exemple :créer un fichier arg.sh avec le contenu qui suit # !bin/bash Printf pour afficher (echo) Read -p « votre nom : » nom(pour entrer des info) Echo « bonjour »$nom (afficher le nom ) Read -p « votre nom -t 5 toto : attendre 5 secondes si vous dépasser 5 secondes la commandes s’arrêtent Ls aucun fichier de ce type car PATH = « » (null part pas de chemain c’est pourquoi n’affichent rien) 2 famille c shell (csh,tcsh)/ famille bourne (sh,bash,ksh,dash) Zsh est un shell qui contient les caracteristique de deux famille Shell 2 aspect : envirenement de travail et langage Un environnement de travail En premier lieu , un shell doit fournir un environnement de travail agréable et puissant . Par exemple , bash permet ( entre autres ) : le rappel des commandes précédentes ( gestion de l'historique ) cela évite de taper plusieurs fois la même commande - la modification en ligne du texte de la commande courante ( ajout , retrait , remplacement de caractères ) en utilisant les commandes d'édition de l'éditeur de texte vi ou emacs la gestion des travaux lancés en arrière - plan ( appelés jobs )(ls & ) ceux - ci peuvent être démarrés , stoppés ou repris suivant les besoins - l'initialisation adéquate de variables de configuration ( chaîne d'appel de l'interpréteur chemins de recherche par défaut ) ou la création de raccourcis de commandes ( commande interne alias ) . Shell executer par (mode interactif/intermédiaire de fichier de commandes (scripts) Créer un alias Alias « gl=date ; ls-l » # administrateur $ les autres utilisateurs Changer le prompt PS1=’gl $’ Sleep 5 entrée date entree $ cd/temp ;pwd ;echo bonjour; cd;pwd Aller au repertoire cmd puis afficher pwdpuis afficher bonjour ensuite aller au repertoire personnelle et enfin afficher Arreter une commande qui execute : ctl+c Commentaire # Fichiers shell # ! precise au shell courant quel interpreteur doit etre utilise pour executer le programme Verifier le contenu de fichier :Cat (nom fichier) Pour lancer l’execution bash (nom fichier) Cat test : appel script test mais test est une commandes internes LES VARIABLES UTILISATEURS (A) Predefinie au shell ps1 path Commandes unix (term ) for variable do instruction(s) done if condition then instruction(s) fi #_/bin/bash If rm « $1 » 2/dev/null Then echo $1 a été supprimer Else echo $1 n\’a pas ete supprimer Fi Rm lva effacer unfichier en cas d’erreur qui seront tous envonyayer das sinon fichier n’exsite pas pas d’erreur • nombre de lignes en commentaire (commençant par !) dans un code Fortran : grep "^!" prog.f | wc -l • recherche de STOP avec le numéro de la ligne dans tous les sources : grep -n -i stop *.f* • liste de tous les fichiers qui n'ont pas "image" ou "son" dans leur nom : ls | grep -vE "(image|son)" • liste des lignes contenant "image" ou "son" dans tous les fichiers du répertoire courant grep -E "(image|son)" * • Si vous voulez tous les fichiers core égarés sur votre disque et qui consomment de la place inutilement : find ~ -name "core" -print 14 • Encore plus fort, si vous voulez supprimer directement les fichiers trouvés, il est possible plutôt que de faire afficher seulement les noms de ces fichiers, de les détruire également : find ~ -name "core" -exec rm {} \; Remarque : {} permet de passer les noms des fichiers trouvés par find à la commande rm et le \; à la fin est obligatoire. • Avec deux filtres c'est possible ! find ~ \( -name "*.L" -o -name "*.o" \) -exec rm {} \; équivalent à find ~ - name "*.[Lo]" -exec rm {} \; • En fait tout est possible, les filtres sont évalués de gauche à droite. Ici on essaye de supprimer les fichiers contenant "chaine" ; si on n'arrive pas à faire le rm, on affiche le fichier find . -exec grep -q chaine {} \; ! -exec rm {} \; -print • Il est possible de spécifier dans le filtre le type d'élément cherché (fichier - type f, ou répertoire -type d) ou ayant une taille particulière (-size nk), le -ok a le même rôle que -exec avec la confirmation en plus. find . - type -d -print find . -size 0k -ok rm {} \; • Il est également possible de spécifier la date de l'élément cherché (-atime +n avec n le nombre de jours depuis le dernier accès) find / \(-name "a.out" -atime +7\) -o \(-name "*.o" - atime +30\) -exec rm {} \; • Un autre cas pratique, vous n'arrivez pas à faire un rm sur un fichier car son nom contient un caractère "bizarre". Nous allons demander à find de détruire (avec confirmation via un - ok ) un fichier par son numéro d'inode. ls -i (pour trouver son numéro d'inode ici 733) find . -inum 733 -ok rm {} \;  Remarque sur le rm : si vous voulez supprimer un fichier qui commence par ▪ - , vous allez avoir quelques surprises, alors utilisez l'option - - de rm ainsi : rm -- fic_avec_un- ▪ # , faites rm ./#fic_avec_un# ou rm \#fic_avec_un# Exercice 2 : 1. Qu'est-ce une distribution Linux ? Les distributions Linux contiennent le noyau Linux, les outils GNU, plus un ensemble de logiciels qu'elles ont choisi de supporter. 2. Quel est le rôle d'un système d'exploitation? Les principales fonctions assurées par un SE sont les suivantes : • La gestion des processus • La gestion de la mémoire • La gestion des systèmes de fichiers • La gestion des entrées/sorties 3. Quelle est la taille maximale que peut avoir un fichier sous Linux (on suppose que la taille d'un bloc est de IKo et le bloc d'index contient 256 pointeurs) ? 10 x IKo + 256 x IKo + 256 x 256 x IKo + 256x 256 x 256 x IKo 4. Par quel moyen sont indexés les fichiers par le système Linux ? inode 5. La commande Unix « Is -I » génère la ligne suivante : -rw-r— 1 télécom 400 12K 17 oct. 21:44 examen_final.tex Quelles informations donne-t-elle ? Dans l'ordre, le type de fichier (ici ordinaire), ses droits (lecture et écriture pour le propriétaire, lecture pour les membres du groupe du propriétaire et aucun droit pour les autres), le nombre de lien(s) sur le fichier (ici 1), le propriétaire (ici télécom), le nom/numéro de groupe (ici 400), la taille (12Ko), la date de dernière modification du fichier (le 17 Octobre 2010 à 21h44), et le nom du fichier. 6. En Linux, quelle commande permet de lister un répertoire ? Ls 7. Quelle est la procédure de démarrage d'un système Linux sur un PC ? • le BIOS charge le programme de démarrage • celui-ci lit et démarre le noyau • le noyau lance le processus init • ce dernier initialise les autres processus. 8. Quelle est la méthode pour exécuter un script dans un terminal ? Il suffit de se placer dans le dossier où est le script, et de lancer : bash nom_du_script.sh ou si vous voulez l'exécuter par son nom , il faut le rendre exécutable avec chmod. Pour ceci tapez la commande qui suit : chmod +x nom_du_script.sh Puis vous pouvez exécuter le script en faisant : ./nom_du_script.sh 9. qu'appelle-t-on la zone spécifique utilisée par linux lorsque la mémoire uploads/Industriel/ video-shell 1 .pdf

  • 20
  • 0
  • 0
Afficher les détails des licences
Licence et utilisation
Gratuit pour un usage personnel Attribution requise
Partager