; Point-virgule

Exécuter les commandes en séquence

# ifdown eth0;ifup eth0

| Pipe

Dans les expressions régulières, signifie « ou »

# echo "ooooee" |egrep '(oo|ee)'{2}   表示匹配 oooo 或者 eeee 的字符

La sortie standard de la commande précédente est utilisée comme entrée standard de la commande suivante.

# ifconfig|grep eth0     表示ifconfig查出来的信息然后过滤出eth0的这一行

&

Place la commande en arrière-plan pour exécution.

# mysqld_safe --user=mysql &        将MySQL放到后台启动

Représente la sortie standard et la sortie d'erreur standard.

# ifconfig &>/dev/null   将ifconfig执行得到的结果输出到/dev/null里面

&&

Exécuter la commande suivante uniquement si la commande précédente renvoie 0.

# ls && echo "ok"  

||

Exécuter la commande suivante uniquement si la commande précédente renvoie une valeur non nulle.

# lls || echo "ok" 

# Signe dièse

#Indique un commentaire

$#Indique le nombre de paramètres positionnels

# echo $#
0

${#variable_name}Indique la longueur de la variable

# a='hello'
# echo ${#a}
5

${#variable_name[@]}Indique le nombre d'éléments dans le tableau

# a=(1 2 3)
# echo ${#a[@]}
3

! Point d'exclamation

Inverse la valeur de retour d'une commande ou d'une expression conditionnelle.

# if ! [ 1 -lt 2 ]; then echo 'ok'; else echo 'no'; fi
ok

Exécute une commande d'historique

# history 
1  ls
2  tail test1.txt
3  mysql -uroot -p123
4  ls /tmp/
5  cd /tmp/
[root@localhost ~]# !994
ls /tmp/
account.sql  data.sql  mysql.sock  t1.txt  t2.txt 

Exécute des commandes shell externes dans vi ou ftp.

Par exemple : dans vim, pour exécuter une commande, passez en mode ligne de commande, tapez le point d'exclamation suivi de la commande à exécuter.

Référence indirecte à une variable

Par exemple : ${!a} ---- obtient indirectement la valeur de b

$ Symbole dollar

Obtient la valeur d'une variable.

# a=10
# echo $a
10

Dans les expressions régulières, représente la fin de ligne.

egrep ':$' /etc/inittab 
egrep ‘^hello$'  file

> Signe supérieur

Redirection de sortie

echo '123' >test.txt       表示将123 输入到文件test.txt中
Signe supérieur dans les tests conditionnels

< Signe inférieur

Redirection d'entrée

Signe inférieur dans les tests conditionnels

= Signe égal

Affectation de variable- Par exemple : set variable a=10

Signe égal dans les tests conditionnels- Par exemple : [ a=b ] teste si la variable a est égale à b.

Comparaison numérique ==- Par exemple : (( a==20 )) teste si la variable a est égale à 20.

+ Signe plus

Signe plus dans les opérations arithmétiques - Par exemple : 1+3

Dans les expressions régulières, un ou plusieurs exemplaires du caractère précédent - Par exemple : ab+c signifie correspondre à un ou plusieurs caractères entre ab et c.

>>

Redirection de sortie en ajout- Par exemple : echo "123" >> test.txt ajoute 123 au fichier test.txt.

<<

document ici

Par exemple :

# passwd <<end
> 123
> 123
> end

Changer le mot de passe de l'utilisateur root.

- Signe moins

Signe moins dans les opérations arithmétiques - Par exemple : 10-2

Option de commande - Par exemple : ls -l

Répertoire de travail précédent - Par exemple : cd -

Représente un intervalle dans les caractères génériques et les expressions régulières - Par exemple : [a-z]

tar -cvf - /home | tar -xvf - 

Représente un flux de sortie ou un flux d'entrée.

Rediriger la sortie précédente via un pipe vers la commande suivante ; la commande de gauche compresse, celle de droite décompresse.

'' Guillemets simples

Résoudre le problème des espaces dans l'affectation de variable.

Par exemple : a='1 2'

Empêcher la substitution du shell.

"" Guillemets doubles

Résoudre le problème des espaces dans l'affectation de variable.

Par exemple : a="1 2"

Empêcher la substitution de certains caractères du shell ; inefficace pour $, !, etc.

`` Backticks, équivalent à $()

Substitution de commande

Par exemple : vous pouvez définir la variable a=`ls`

% Signe pour cent

Opération modulo dans les opérations arithmétiques.

Par exemple : echo $((100%10)) donne un reste de 0 lorsque 100 est divisé par 10.

Dans les opérations de remplacement de vi, représente toutes les lignes. (En mode ligne de commande, ajoutez % avant le remplacement pour l'appliquer à toutes les lignes.)

Par exemple : En mode ligne de commande, saisissez :% s/D/d pour remplacer tous les D du texte par d.

() Parenthèses

Exécute des commandes dans un sous-shell ; il hérite des variables du shell parent.

Encadre les éléments d'un tableau.

Par exemple : définir un tableau.a=(1 2 3 4)

(()) Doubles parenthèses

Opérations arithmétiques.

Par exemple :echo $((10/2))Le résultat est 5.

Tests de comparaison d'entiers.

Par exemple :(( 10>2 ))Testez si 10 est supérieur à 2.

[] Crochets

Dans les jokers et les regex, signifie correspondre à un seul caractère à l’intérieur des crochets.

Par exemple :[abc]Signifie correspondre à l’un des caractères a, b ou c.

Expression de test conditionnelle.

Par exemple :[ -f /etc/passwd ]// Vérifie s’il s’agit d’un fichier.

Crochets d’indice dans les tableaux.

Par exemple :echo ${a[0]}Signifie obtenir la valeur à l’indice 0 dans le tableau.

[[]] Crochets doubles

Tests de comparaison de chaînes de caractères.

Par exemple : [[a=b]] est utilisé pour la comparaison de chaînes de caractères.

. Point (point)

En regex, signifie n’importe quel caractère.

Par exemple : a...b signifie correspondre à une chaîne avec trois caractères entre a et b.

Commande de script source dans le shell courant.

Par exemple : ./test.sh exécute le script shell test.sh dans le répertoire courant.

Représente le répertoire courant.

Par exemple : cd ./bgk entre dans le répertoire bgk sous le répertoire courant.

{} Accolades

Expansion des caractères génériques abc{1,2,3}

Représente une plage dans les expressions régulières.

Par exemple : a{3} correspond à trois a.

for i in {1...10} parcourt une plage spécifiée.

Fonction anonyme { cmd1;cmd2;cmd3;} &> /dev/null

Les commandes à l'intérieur de { } sont exécutées dans le shell courant.

Remarque : dans { }, il doit y avoir un espace avant la première commande, et un point-virgule après la ou les commandes suivantes.

Encadre les noms de variables.${abc}a

/ Barre oblique

Division dans les opérations arithmétiques.

Par exemple :echo $((10/2))Le résultat est 5.

Répertoire racine ou séparateur de chemin.

Par exemple :cd /usr/local/Représente un chemin.

^

Dans les caractères génériques, représente la négation.

Par exemple :[^abc] Signifie faire correspondre tout caractère sauf a, b ou c.

Dans les expressions régulières, représente « commence par ».

Par exemple :

egrep ‘^hello$'  file