Maison  >  Article  >  Java  >  Une brève introduction à la programmation shell

Une brève introduction à la programmation shell

巴扎黑
巴扎黑original
2017-06-26 11:20:381282parcourir

Shell lui-même est un programme écrit en langage C. C'est un pont permettant aux utilisateurs d'utiliser Unix/Linux. La plupart du travail de l'utilisateur est effectué via Shell. Shell est à la fois un langage de commande et un langage de programmation. En tant que langage de commande, il interprète et exécute de manière interactive les commandes saisies par l'utilisateur ; en tant que langage de programmation, il définit diverses variables et paramètres et fournit de nombreuses structures de contrôle que l'on trouve uniquement dans les langages de haut niveau, notamment des boucles et des branches.

Bien qu'il ne fasse pas partie du noyau du système Unix/Linux, il appelle la plupart des fonctions du cœur du système pour exécuter des programmes, créer des fichiers et coordonner l'exécution de divers programmes de manière parallèle. Par conséquent, pour les utilisateurs, le shell est le programme utilitaire le plus important. Une compréhension approfondie et une maîtrise des caractéristiques et de l’utilisation du shell sont les clés pour faire bon usage du système Unix/Linux.

On peut dire que la maîtrise de l'utilisation du shell reflète la maîtrise de l'utilisateur dans l'utilisation d'Unix/Linux.

Shell a deux manières d'exécuter des commandes :

  • Interactive (Interactive) : interprète et exécute la commande de l'utilisateur, l'utilisateur saisit une commande, Shell en interprétera et en exécutera un.

  • Batch : L'utilisateur écrit à l'avance un script Shell, qui contient de nombreuses commandes, afin que le Shell puisse exécuter ces commandes en même temps sans avoir à taper les commandes une par une.


Les scripts Shell sont très similaires aux langages de programmation. Ils ont également des variables et des instructions de contrôle de flux, mais les scripts Shell sont interprétés et exécutés et n'ont pas besoin d'être compilés. Le programme lit ligne par ligne à partir du script. Récupérer et exécuter ces commandes équivaut à un utilisateur tapant les commandes du script ligne par ligne dans l'invite du Shell pour exécution.

Débutants Shell, veuillez noter que dans les applications quotidiennes, il est recommandé de ne pas utiliser le compte root pour exécuter Shell. En tant qu'utilisateur ordinaire, vous ne pouvez pas endommager le système, intentionnellement ou non ; mais si vous êtes root, c'est différent. Le simple fait de taper quelques lettres peut avoir des conséquences catastrophiques.

Les interpréteurs de scripts shell courants sous Unix/Linux incluent bash, sh, csh, ksh, etc. Il est d'usage de les appeler une sorte de Shell. Nous parlons souvent du nombre de types de Shell, mais nous parlons en réalité de l'interpréteur de script Shell.

bash

bash est le shell par défaut standard de Linux. Ce tutoriel est également basé sur bash. bash a été réalisé conjointement par Brian Fox et Chet Ramey. C'est l'abréviation de BourneAgain Shell et compte un total de 40 commandes internes.

Linux l'utilise comme shell par défaut car il possède les fonctionnalités suivantes :

  • Vous pouvez utiliser des fonctions similaires à doskey sous DOS, utilisez les touches fléchées pour parcourir et rapidement Saisissez et modifiez les commandes.

  • Donne automatiquement des commandes commençant par une certaine chaîne en recherchant des correspondances.

  • contient sa propre fonction d'aide. Il vous suffit de taper aide à l'invite pour obtenir une aide pertinente.

sh

sh a été développé par Steve Bourne et est l'abréviation de Bourne Shell sh est le shell par défaut standard d'Unix.

ash

ash shell a été écrit par Kenneth Almquist. C'est un petit shell qui consomme le moins de ressources système sous Linux. Il ne contient que 24 commandes internes, il est donc très peu pratique à utiliser. .

csh

csh est un noyau Linux relativement volumineux. Il est compilé par un total de 47 auteurs représentés par William Joy et possède un total de 52 commandes internes. Ce shell pointe en fait vers un shell tel que /bin/tcsh. En d'autres termes, csh est en fait tcsh.

ksh

ksh est l'abréviation de Korn shell, écrite par Eric Gisin, avec un total de 42 commandes internes. Le plus grand avantage de ce shell est qu'il est presque entièrement compatible avec la version commerciale de ksh, vous pouvez donc essayer les performances de la version commerciale sans dépenser d'argent pour acheter la version commerciale.

Remarque : bash est l'abréviation de Bourne Again Shell et est le shell par défaut standard de Linux. Il est basé sur le shell Bourne et absorbe certaines fonctionnalités du shell C et du shell Korn. bash est entièrement compatible avec sh, c'est-à-dire que les scripts écrits en sh peuvent être exécutés en bash sans modification.

Langages compilés

De nombreux langages de programmation traditionnels, tels que Fortran, Ada, Pascal, C, C++ et Java, sont des langages compilés. Ce type de langage nécessite de convertir au préalable le code source que nous avons écrit en code objet (code objet). Ce processus est appelé « compilation ».

Lors de l'exécution du programme, lisez directement le code objet. Étant donné que le code objet compilé est très proche de la couche inférieure de l'ordinateur, l'efficacité d'exécution est très élevée, ce qui constitue l'avantage des langages compilés.

Cependant, étant donné que les langages compilés fonctionnent principalement au niveau inférieur et traitent des octets, des entiers, des nombres à virgule flottante ou d'autres objets au niveau machine, l'implémentation d'une fonction simple nécessite souvent beaucoup de code complexe. Par exemple, en C++, il est difficile d'effectuer des opérations simples telles que « copier tous les fichiers d'un répertoire vers un autre répertoire ».

Langage interprété

Le langage interprété est également appelé « langage de script ». Lors de l’exécution de ce type de programme, l’interprète doit lire le code source que nous avons écrit et le convertir en code objet, qui est ensuite exécuté par l’ordinateur. Parce que chaque fois que le programme est exécuté, il y a un processus de compilation supplémentaire, donc l'efficacité est réduite.

L'avantage de l'utilisation des langages de programmation de script est qu'ils s'exécutent généralement à un niveau supérieur aux langages compilés et peuvent facilement gérer des objets tels que des fichiers et des répertoires ; l'inconvénient est qu'ils ne sont généralement pas aussi efficaces ; comme langages compilés. Cependant, le compromis est qu'il est généralement intéressant d'utiliser la programmation par script : un simple script qui prend une heure à écrire peut prendre deux jours pour implémenter la même fonction en C ou C++, et d'une manière générale, la vitesse d'exécution du script est rapide. assez. , assez rapide pour que les gens ignorent ses problèmes de performances. Des exemples de langages de programmation de script incluent awk, Perl, Python, Ruby et Shell.

L'utilisation des scripts Shell est basée sur :

  • La simplicité : Shell est un langage de haut niveau grâce à lui, vous pouvez exprimer des opérations complexes de manière concise.

  • Portabilité : Grâce aux fonctions définies par POSIX, le script peut être exécuté sur différents systèmes sans modification.

  • Facile à développer : un script puissant et utile peut être réalisé en peu de temps.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn