Table des matières[Cacher][Montrer]
- 1. Qu'est-ce qu'une coque exactement ?
- 2. Qu'est-ce que le Shell Scripting exactement ?
- 3. Expliquez les avantages des scripts shell.
- 4. Décrire la programmation de l'interface graphique.
- 5. En programmation shell, qu'est-ce qu'un superbloc exactement ?
- 6. Énumérez les nombreux types de coquillages accessibles.
- 7. Écrivez la distinction entre Bourne Shell et C Shell.
- 8. Que sont exactement les variables Shell ?
- 9. Quels sont les nombreux types de variables dans Shell Script ?
- 10. Quelle commande est utilisée pour exécuter un fichier shell ?
- 11. Que pouvez-vous me dire sur le Super Block dans les scripts Shell ?
- 12. Qu'est-ce qu'un métacaractère exactement ?
- 13. Quelle est la distinction entre les liens souples et les liens durs ?
- 14. Quelle est la signification de la ligne Shebang dans Shell Scripting ?
- 15. Quelles sont les différentes étapes d'un processus Linux ?
- 16. Décrire Crontab.
- 17. Que sont exactement les instructions de contrôle ?
- 18. Quelle est la différence entre $* et $@ ?
- 19. Veuillez expliquer comment vous comparez les chaînes dans un script shell.
- 20. Comment puis-je créer, lire et supprimer des fichiers ?
- 21. Est-il possible de distinguer les liens matériels et logiciels dans les scripts shell ?
- 22. Comment allez-vous résoudre les bogues dans le programme shell ?
- 23. Combien y a-t-il de blocs dans un système de fichiers ?
- 24. Pourquoi bash est-il un langage faiblement typé ?
- 25. Quelle est la longueur d'une variable dans un script shell ?
- 26. Nommez la commande de remplacement pour echo.
- 27. Définir l'IFS
- 28. Est-il possible d'exécuter plusieurs scripts dans un Shell ?
- 29. Quels sont les nombreux modes des éditeurs vi ?
- 30. Quelle est la différence entre $ ! et $$?
- 31. Que signifie $# ?
- 32. Nommez la commande utilisée pour créer la sauvegarde.
- 33. Quand est-il inapproprié d'utiliser Shell Scripting ?
- 34. Comment allez-vous vous connecter à un serveur de base de données depuis Linux ?
- 35. Quels sont les deux fichiers de commandes crontab ?
- 36. Quelles sont les trois protections de sécurité UNIX distinctes pour un fichier ou des données ?
- 37. Expliquez brièvement la commande sed à l'aide d'un exemple.
- 38. Dans les scripts shell, à quoi servent les outils fournis avec le pilote client ouvert ?
- 49. Nommez la commande qui doit être utilisée pour déterminer la durée du système.
- 40. Créez un script pour ajouter de nombreuses valeurs.
- 41. Créez un exemple de fonction.
- Conclusion
Un script shell est un programme informatique ou un interpréteur de ligne de commande destiné à être exécuté par le shell Unix. L'aspect le plus agréable de la construction d'un script shell est que les instructions et la syntaxe sont identiques à celles saisies directement sur la ligne de commande.
Linux est un système d'exploitation open source populaire reconnu pour sa haute sécurité et son interface de ligne de commande. Il est essentiel pour les futurs ingénieurs DevOps de comprendre les scripts shell ou les scripts bash.
Si vous êtes familier avec les scripts shell et que vous vous préparez à un entretien d'embauche, cet article sur les questions et réponses de l'entretien de script shell vous fournira les meilleures questions d'entretien de script shell qui faciliteront votre préparation.
1. Qu'est-ce qu'une coque exactement ?
Le shell sert de pont entre l'utilisateur et le noyau. Même s'il ne peut y avoir qu'un seul noyau, un système peut avoir plusieurs shells exécutés en même temps.
Par conséquent, chaque fois qu'un utilisateur tape une commande sur le clavier, le shell communique avec le noyau pour l'exécuter, puis affiche les résultats à l'utilisateur.
2. Qu'est-ce que le Shell Scripting exactement ?
Shell Scripting est un logiciel informatique gratuit et open source qui s'exécute dans le shell Unix/Linux. Le logiciel Shell Scripting vous permet d'écrire une série de commandes que le shell exécutera.
Il peut intégrer des séquences de commandes longues et répétitives dans un script unique et facile qui peut être enregistré et exécuté à tout moment, réduisant ainsi les efforts de programmation.
3. Expliquez les avantages des scripts shell.
- Presque tous les systèmes d'exploitation actuels, y compris UNIX, Linux, BSD et Mac OS X, peuvent exécuter des scripts shell car ils sont créés dans un langage interprété.
- Un outil de débogage interactif, ainsi qu'une prise en main rapide.
- Il permet de gagner du temps en aidant à automatiser les tâches administratives.
- Les programmeurs n'ont pas besoin d'ajuster leur syntaxe car la commande et la syntaxe sont les mêmes que celles placées directement dans la ligne de commande.
- Les scripts shell sont simples à utiliser et à écrire.
- Cet outil permet de produire des applications logicielles en fonction de leurs plateformes respectives.
- Au lieu d'instructions uniques, elles peuvent être utilisées pour une exécution en masse.
- Vous pouvez l'utiliser pour créer votre propre système d'exploitation personnalisé avec les fonctionnalités nécessaires.
4. Décrire la programmation de l'interface graphique.
Le graphique Interface utilisateur La programmation (GUI) nécessaire pour faire fonctionner l'ordinateur et les applications est appelée script GUI. Il fonctionne avec plusieurs systèmes d'exploitation et est utilisé pour contrôler divers programmes.
5. En programmation shell, qu'est-ce qu'un superbloc exactement ?
Un logiciel appelé superbloc stocke les enregistrements de certains systèmes de fichiers. La taille, le nombre de blocs remplis et vides, les données d'utilisation, la taille du groupe de blocs et l'emplacement et la taille des tables d'inodes font partie des propriétés que l'on peut trouver dans un bloc.
6. Énumérez les nombreux types de coquillages accessibles.
- Shell Bourne : lors de l'utilisation d'un shell de type Bourne, l'invite par défaut est le symbole $.
- C Shell : lors de l'utilisation d'un shell de type C, l'invite par défaut est le caractère %.
- Shell Korn : Korn est une application de script Shell basée sur Unix qui était à l'origine basée sur Bash Shell Scripting. Ce shell est très complexe et utilise un haut niveau langage de programmation.
- TCSH : Il n'existe pas de forme complète de TCSH. C'est comme ça. TCSH est une version plus sophistiquée du shell Berkeley Unix C. Il prend désormais en charge la syntaxe C.
7. Écrivez la distinction entre Bourne Shell et C Shell.
Bourne Shell : Sa compacité et sa rapidité le distinguent des autres obus. Cependant, des éléments interactifs tels que la possibilité de se souvenir des demandes précédentes manquent. De plus, l'arithmétique et expressions logiques ne sont pas pris en charge par le shell Bourne.
C Shell : Il s'agit d'une amélioration UNIX qui inclut des fonctionnalités interactives telles que les alias et l'historique des commandes. Il contient des capacités de programmation faciles en plus de sa grammaire arithmétique et d'expression intégrée.
8. Que sont exactement les variables Shell ?
Les variables Shell sont la base de chaque programme ou script Shell. Les variables permettent à Shell de stocker et de modifier des données dans une application Shell. Les variables de chaîne sont couramment utilisées pour contenir des variables shell.
9. Quels sont les nombreux types de variables dans Shell Script ?
Le système d'exploitation (Linux) crée et définit des variables définies par le système. Ces variables sont souvent définies en majuscules et peuvent être examinées avec la commande « set ».
Les variables définies par l'utilisateur sont générées ou spécifiées par les utilisateurs du système, et leurs valeurs peuvent être examinées en exécutant la commande "echo".
10. Quelle commande est utilisée pour exécuter un fichier shell ?
11. Que pouvez-vous me dire sur le Super Block dans les scripts Shell ?
Un Super Block est simplement un logiciel qui stocke des informations sur certains systèmes de fichiers.
Un superbloc contient des informations telles que la taille de bloc, le nombre de blocs vides et pleins et leurs nombres correspondants, la taille et l'emplacement des tables d'inodes, la carte des blocs de disque, les statistiques d'utilisation et la taille des groupes de blocs.
12. Qu'est-ce qu'un métacaractère exactement ?
Un métacaractère est un caractère unique qui est incorporé dans le programme ou le champ de données d'un shell. Il fournit des informations sur d'autres personnages. Pour lister tous les fichiers commençant par le caractère 's', par exemple, utilisez la commande 'ls s*'.
13. Quelle est la distinction entre les liens souples et les liens durs ?
Les liens symboliques sont liés au nom de fichier et peuvent vivre sur différents systèmes de fichiers ; tandis que les liens physiques sont liés à l'inode du fichier et doivent se trouver sur le même système de fichiers que le fichier.
La suppression du fichier d'origine rend le lien symbolique inactif (lien brisé), mais n'a aucun effet sur la connexion matérielle et le lien physique accédera toujours à une copie du fichier.
14. Quelle est la signification de la ligne Shebang dans Shell Scripting ?
La ligne Shebang est normalement située en tête du script, par exemple, #!/bin/sh. Cette ligne spécifie la position du moteur. Ce moteur est généralement celui qui exécute le script.
15. Quelles sont les différentes étapes d'un processus Linux ?
Généralement, un processus Linux passe par les quatre étapes suivantes :
- En attente : la ressource est en attente par le processus Linux.
- En cours d'exécution : en ce moment, le processus Linux est en cours d'exécution.
- Arrêté : après une exécution réussie, le processus Linux est terminé.
- ZombieeLe processus s'est arrêté, mais la table des processus l'affiche toujours comme actif.
16. Décrire Crontab.
Crontab signifie table cron puisque le planificateur de tâches "cron" est utilisé pour effectuer les tâches. Il s'agit d'un ensemble de commandes exécutées régulièrement, et le nom de la commande contrôle également la liste.
Le calendrier et l'outil utilisé pour modifier le calendrier s'appellent tous deux Crontab.
17. Que sont exactement les instructions de contrôle ?
Les instructions de contrôle indiquent comment les différentes instructions du script seront exécutées. Ils sont généralement utilisés dans les applications Shell pour évaluer contrôler le flux.
Sans ces instructions, l'exécution d'un script shell se déroule en séquence. Les instructions de contrôle influencent le déroulement de l'exécution dans les programmes shell.
18. Quelle est la différence entre $* et $@ ?
$@ considère chaque argument entre guillemets comme un argument séparé, tandis que $* considère la collection complète de paramètres positionnels comme une seule chaîne.
19. Veuillez expliquer comment vous comparez les chaînes dans un script shell.
La commande 'test' est utilisée pour comparer des chaînes de texte. Cette commande compare les chaînes de texte en comparant les caractères de chaque chaîne.
20. Comment puis-je créer, lire et supprimer des fichiers ?
21. Est-il possible de distinguer les liens matériels et logiciels dans les scripts shell ?
Le script Shell est une solution puissante qui, comme Windows, utilise des liens pour créer des raccourcis. Les liens symboliques n'ont pas d'emplacement fixe et peuvent être trouvés partout sur le même système de fichiers.
Ils sont généralement liés au nom du fichier. Les liens physiques, en revanche, restent sur le même système de fichiers. Dans la plupart des situations, les liaisons dures sont associées à des nœuds et ont une certaine position fixe.
22. Comment allez-vous résoudre les bogues dans le programme shell ?
Voici quelques méthodes courantes de dépannage des bogues de script :
- Set-x est utilisé pour permettre le débogage.
- Insérez des instructions de débogage dans un script shell pour afficher des informations qui facilitent la découverte d'un problème.
23. Combien y a-t-il de blocs dans un système de fichiers ?
- Superbloc : ce bloc fournit des détails sur l'état d'un système de fichiers, notamment la taille des blocs, la taille des groupes de blocs, les données d'utilisation, le nombre de blocs vides et remplis, la taille et l'emplacement des tables d'inodes, etc.
- Bootblock : le logiciel du chargeur d'amorçage, qui s'exécute lorsqu'un utilisateur démarre le système hôte, est stocké dans ce bloc.
- Bloc de données : ce bloc de données contient le contenu du fichier du système de fichiers.
- Table inode : UNIX traite tous les composants comme des fichiers et la table inode est le référentiel de toutes les données liées aux fichiers.
24. Pourquoi bash est-il un langage faiblement typé ?
En raison de l'absence d'exigence de déclaration de type de données lors de la déclaration de variables, Bash est un langage faiblement typé. Le type d'une variable est déterminé par sa valeur actuelle et est traité comme une chaîne dans Bash.
La commande declare peut être utilisée pour définir des variables Bash.
Cependant, les possibilités de définition des types de données sont restreintes et ne couvrent pas tous les types de données. Par exemple, la commande declare ne peut pas être utilisée avec le type de données float.
25. Quelle est la longueur d'une variable dans un script shell ?
Une variable dans un script shell a une durée de vie jusqu'à la fin de l'exécution.
26. Nommez la commande de remplacement pour echo.
La commande tput est une alternative à echo. Nous pouvons utiliser cette commande pour contrôler la façon dont la sortie est affichée. De plus, quelle que soit la taille de l'écran, les scripts shell peuvent effectuer des actions telles que souligner et centrer le texte.
27. Définir l'IFS
IFS signifie Interne Field Separator. Il s'agit d'une variable système dont la valeur par défaut est espace, tabulation, suivie d'une nouvelle ligne. IFS indique où un champ ou un mot se termine sur une ligne et un autre commence.
28. Est-il possible d'exécuter plusieurs scripts dans un Shell ?
Oui, de nombreux scripts peuvent être exécutés dans un Shell. Vous pouvez appeler un script à partir d'un autre en exécutant plusieurs scripts. Pour ce faire, vous devez spécifier le nom du script que vous souhaitez invoquer.
29. Quels sont les nombreux modes des éditeurs vi ?
- Mode commande : c'est le mode dans lequel vous commencez.
- Mode d'édition : cette option vous permet d'effectuer des modifications ultérieures.
- Dans ce mode, vous interagissez avec vi et lui donnez des instructions à traiter.
30. Quelle est la différence entre $ ! et $$?
$ ! Affiche l'ID de processus du processus qui est récemment passé en arrière-plan.
$$ renvoie l'ID de processus du processus en cours d'exécution.
31. Que signifie $# ?
$# contient généralement le nombre d'arguments, bien que cela puisse différer pour les fonctions. Décrit simplement, il était utilisé pour enregistrer le nombre de paramètres de ligne de commande fournis à un script shell.
32. Nommez la commande utilisée pour créer la sauvegarde.
La commande tar est utilisée pour créer une sauvegarde. Tar est une abréviation d'archive sur bande, et il est utilisé pour créer des sauvegardes qui utilisent tar, gzip et bzip. Cette commande peut enregistrer et restaurer des fichiers depuis et vers une bande.
Généralement, les fichiers et les répertoires sont compressés dans des archives tar, qui sont des fichiers d'archive. C'est l'une des instructions les plus utilisées pour cette raison. De plus, l'archive est simplement transférable d'un serveur à un autre.
33. Quand est-il inapproprié d'utiliser Shell Scripting ?
Nous ne devrions pas utiliser Shell Scripting si le travail est vraiment complexe, comme la construction d'un système complet de traitement de la paie.
Nous ne devons pas utiliser Shell Scripting si le travail nécessite un haut degré de productivité.
Nous ne devons pas utiliser Shell Scripting si le projet nécessite plusieurs solutions logicielles.
34. Comment allez-vous vous connecter à un serveur de base de données depuis Linux ?
Nous pouvons utiliser l'utilitaire isql inclus avec le pilote client ouvert comme suit :
35. Quels sont les deux fichiers de commandes crontab ?
cron.allow détermine quels utilisateurs doivent être autorisés à utiliser la commande crontab.
cron.deny, qui détermine si les utilisateurs doivent être interdits d'utiliser la commande crontab.
36. Quelles sont les trois protections de sécurité UNIX distinctes pour un fichier ou des données ?
- Il offre une sécurité au niveau des fichiers en accordant des droits de lecture, d'écriture et d'exécution aux fichiers.
- Il offre aux utilisateurs un identifiant et un mot de passe uniques pour l'authentification afin que les personnes inconnues ou non autorisées ne puissent pas y accéder.
- Il offre une sécurité en chiffrer des fichiers. Cette approche vous permet d'encoder un fichier dans un format illisible. Même si un fichier est ouvert, son contenu ne peut pas être lu tant qu'il n'est pas déchiffré.
37. Expliquez brièvement la commande sed à l'aide d'un exemple.
sed est l'abréviation de l'éditeur de flux. Il est utilisé pour éditer un fichier sans l'utilisation d'un éditeur. Il est utilisé pour modifier un flux donné, tel qu'un fichier ou une entrée de pipeline.
38. Dans les scripts shell, à quoi servent les outils fournis avec le pilote client ouvert ?
Le système est uniquement connecté à un serveur de base de données via les outils. Les utilisateurs doivent effectuer un certain nombre d'activités importantes et nécessaires à la programmation.
Pour les scripts, plus de données et d'informations sont nécessaires, et il n'est pas toujours pratique de les conserver au même endroit. Les utilisateurs qui utilisent cette approche doivent garantir une sortie sans erreur.
49. Nommez la commande qui doit être utilisée pour déterminer la durée du système.
À l'aide de la commande Uptime, vous pouvez déterminer depuis combien de temps votre système est opérationnel. Le nombre d'utilisateurs avec des sessions actives et la charge système typique sur 1, 5 et 15 minutes sont également disponibles.
Vous pouvez également filtrer les informations présentées en une seule fois en fonction des choix que vous faites.
40. Créez un script pour ajouter de nombreuses valeurs.
41. Créez un exemple de fonction.
Conclusion
Vous pouvez comprendre que le shell est principalement une interface entre le système d'exploitation et l'utilisateur qui traduit les instructions saisies par l'utilisateur vers le système d'exploitation ou le noyau à l'aide de ces questions d'entretien sur les scripts shell.
Ce concept est souvent crucial dans le processus de préparation des entretiens pour Ingénieurs DevOps et testeurs d'automatisation. Les scripts shell permettent la création de scripts de différents niveaux de complexité. Les scripts shell peuvent également être utilisés pour automatiser une variété de processus récurrents.
See Série d'interviews de Hashdork pour une aide à la préparation des entretiens.
Soyez sympa! Laissez un commentaire