Linux – Bash et Shell expliqués

巴扎黑
Libérer: 2017-07-18 09:31:28
original
2297 Les gens l'ont consulté

1. Qu'est-ce que Shell ?

Le shell au sens étroit fait référence aux logiciels de ligne de commande, y compris la fenêtre d'exploitation Linux de base Bash, etc. Le shell au sens large inclut un logiciel d'interface graphique, car l'interface graphique peut en fait faire fonctionner divers pilotes Le programme appelle le noyau pour faire le travail.

Les shells légaux du système sont écrits dans le fichier /etc/shells.

2. Compétences opérationnelles de base de Bash Shell

1. Afficher les commandes exécutées lors de la connexion précédente : vim ~/.bash_history
2. Fonction de complétion de commande et de fichier (touche Tab)
tab est suivi du premier mot d'une séquence d'instructions, puis c'est la complétion de commande
tab est suivi du deuxième mot d'une séquence d'instructions instructions Après le mot, c'est l'achèvement du fichier
3. Fonction de configuration de l'alias de commande : alias
alias lm='ls -al'
4. )
5. Caractères génériques
6. Entrée de nouvelle ligne + [enter]
7. [crtl]+u / [crtl] +k
8. Déplacez le curseur au début/à la fin de la chaîne de commande entière [crtl] +a / [crtl]+e
9. . Utilisez env et export pour observer les variables d'environnement ; set peut observer toutes les variables dans l'environnement bash actuel
10. Dans les commandes continues ; deux commandes peuvent être exécutées en continu :
  • &&. la commande précédente ne doit pas avoir de message d'erreur

  • || Si elle est correcte, la deuxième commande ne sera pas exécutée. Erreur puis exécutez le deuxième élément

11. Problème d'encodage : le paramètre LANG ou LC_ALL répertorie la langue actuelle.
12. Affichez le code original de l'alias : tapez -a commande alias
13. Listez toutes les clés et le contenu des clés : stty -a
14. Définissez les clés Fonction : stty effacer ^h : Définissez crtl + h pour supprimer les caractères vers l'arrière
15. Obtenez la version principale : echo $(uname -r)
3. Shell Script
Concept : Le script Shell est un programme écrit en utilisant la fonction du shell. Ce programme utilise des fichiers texte brut. Écrivez-y de la syntaxe et des instructions shell, et utilisez des fonctions telles que des expressions régulières, des commandes de pipeline et la redirection de flux de données pour exécuter nos commandes de traitement.
Compréhension personnelle : En fait, le script Shell est une commande batch dans la fenêtre. C'est un programme écrit par des instructions shell et une petite syntaxe de script. Le script Shell est un bon outil pour la gestion du système, mais il n'est pas suffisant pour traiter un grand nombre d'opérations numériques, car les scripts shell sont plus lents et utilisent plus de ressources CPU, ce qui entraîne une mauvaise allocation des ressources hôte.
Variable :
Type de variable : Le type de variable bash est par défaut une chaîne, qui peut être un type entier ou tableau. Il n'y a pas de type flottant. type point. Il n'y a donc pas de décimal et le résultat de 1/3 est 0.
Déclaration de variable : La valeur par défaut est une chaîne, qui peut être directement déclaré comme nom de variable = contenu de la variable (x=123 )De cette façon, si vous souhaitez le déclarer sous forme de tableau ou d'entier, vous pouvez :
  • Les variables et le contenu des variables sont reliés par un signe égal =, a=123

  • Les deux côtés du le signe égal ne peut pas être connecté directement Le caractère espace

  • se compose de lettres et de chiffres anglais, mais le début ne peut pas être un chiffre

  • S'il y a caractères spéciaux dans le contenu de la variable, vous pouvez utiliser "" Ou '' combiner le contenu de la variable

  • " "La variable $ peut conserver les caractéristiques d'origine

  • ' ' La variable $ est traitée comme si les caractères normaux peuvent être traités

  • Vous pouvez utiliser des caractères d'échappement pour traiter les caractères spéciaux inconnus comme des caractères normaux

  • `` ou () Signification : `` ou les instructions entre () sont exécutées en premier en tant qu'informations d'entrée externes

  • Remplacez - par + pour effectuer l'action [annuler]. : déclarer +x sum :

  • Listez les types de variables séparément : déclarer -p sum

  • Mise à niveau vers l'environnement variables : export PATH

  • Variable non définie : non définie a

  • Définition du tableau : var[1]="123" var[2]=" 456" var[3]=" 789"

  • La signification de `` ou () : Les instructions dans `` ou () sont d'abord exécutées en tant qu'informations d'entrée externes
  • Variable $$ : Le numéro qui apparaît est votre numéro PID
  • Variable ? : Le code d'erreur de l'instruction d'erreur précédente, s'il n'y a pas d'erreur, ce sera 0

Interaction variable : read -p "Veuillez saisir votre name:" -t 30 name (-p signifie Inviter le monde, -t signifie 30 secondes de temps de saisie)
Extension du contenu variable : PATH=" $PATH":/home/bin
Suppression du contenu de la variable : echo ${path#/*:} Cette phrase signifie supprimer les caractères les plus courts de / à :

Remplacement du contenu variable :

Exécution : 1. Exécution du chemin absolu direct et du chemin relatif, l'exécuteur doit disposer des autorisations d'exécution de script.
2. Les variables globales peuvent être exécutées via bash shell.sh ou sh shell.sh
Différences dans les méthodes d'exécution de source et sh scénario ?
Le script sh ou le script bash utilisera un nouvel environnement bash pour exécuter les commandes du script. Lorsque le sous-programme est terminé, chaque variable ou action du sous-programme sera terminée sans être retransférée au. programme parent
Le script source sera exécuté dans le programme parent, donc toutes les actions prendront effet dans le bash d'origine
Contrôle de processus ( séquence) : les scripts shell sont exécutés dans l'ordre de haut en bas et de gauche à droite.
Contrôle du processus (condition) :
  • le nom de fichier test -e existe

  • test -f fichier Si le nom du fichier existe et est un fichier

  • test -d répertoire Si le nom du fichier existe et est un répertoire

  • test -r -w -x filename S'il dispose d'autorisations de lecture, d'écriture et d'exécution

  • test n1 -eq n2 Les deux valeurs​​sont égales

  • test n1 -ne n2 Les deux valeurs ne sont pas égales

  •               -gt  n1 est supérieur à n2

  • >

                                                                                                                                                                                                                                      .

    L'interaction avec les variables de script peut également utiliser ${0}, ${1}, ${2}, ${3} pour continuez, ${0} représente le nom du script exécuté, ${1} représente la première variable saisie, ${2} représente la deuxième variable saisie, ${3} représente la troisième variable saisie

    si jugement conditionnel

    cas jugement conditionnel

    Contrôle de flux (boucle ):

    boucle while

    pour la boucle

    pour la boucle

    Fonction :

    Remarque : Contrairement aux langages traditionnels, les fonctions doivent être définies au début du script afin que la fonction puisse être reconnue lors de l'exécution du programme. Les paramètres de fonction sont également transmis en utilisant ${1}, ${2}, ${3}, c'est-à-dire que ${1}/${2}/${3} dans la fonction sont transmis lors de l'appel de la fonction. .paramètres réels. Au lieu des paramètres passés lors de l'exécution du script

                                                  

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!

Étiquettes associées:
source:php.cn
Déclaration de ce site Web
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
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal