Maison Tutoriel système Linux Apprentissage des commandes de base du Shell

Apprentissage des commandes de base du Shell

Jul 15, 2024 pm 03:35 PM
linux linux教程 红帽 linux系统 linux命令 certification Linux chapeau rouge Linux vidéo Linux

Apprentissage des commandes de base du Shell

1 : Écrire un script shell
vi test.sh
#!/bin/bash #指定这个脚本需要什么解释器来执行
echo "Hello World !" # echo命令用于向窗口输出文本
Copier après la connexion
2 : Exécuter le script shell
cd入文件存在的目录
chmod +x ./test.sh #使脚本具有执行的权限
./test.sh #执行脚本
Copier après la connexion
3 : Comprendre les variables Shell
例子: your_name="wangzhi.cn"
注意:变量名和等号之间不能有空格
规则:
(1).首字母必须为字母(a-z,A-Z)
(2).中间不能有空格,可以使用(_)
(3).不能使用标点符号
(4).不能使用bash中的关键字(可以使用help命令查看保留关键字)
例子:for file in `ls /etc` 这个语句可以将/etc下目录的文件名循环出来
Copier après la connexion
4 : Utilisation de variables
定义变量:your_name = "wangzhi"
使用变量:echo ${your_name} # 建议输出变量加上{},养成好的编程习惯.
Copier après la connexion
5 : Chaîne Shell (note : l'indice est calculé à partir de 0)
单引号:
str = 'This is a string' (限制:
单引号中的任何字符都会原样输出,单引号中无法输出变量;
单引号中不能出现单引号)

双引号:
str = "Hello, I know your are \"${your_name}\"!\n"
(双引号内可以有变量;双引号内可以有转义字符)

字符串拼接:
your_name="qinjx"
greeting="hello, "$your_name" !"
greeting_1="hello, ${your_name} !"
echo $greeting $greeting_1

获取字符串长度:
string="abcd"
echo ${#string} #输出 4

提取字符串
string="alibaba is a great company"
echo ${string:1:4} #输出liba,字符串的下标是从0开始的

查找子字符串(下标从1开始计算)
string="alibaba is a great company"
echo `expr index "$string" is`

#!/bin/bash
your_name="wangzhi"
echo ${your_name}
str='This is a String'
echo "单引号字符串 :${str}" # 拼接都可以这样写,下面的写法是被误导的
str2="Hello, I know you are \"${your_name}\"!\n"
echo "双引号字符串 : \" ${str2}\"\n"
greet="Hello, ${your_name} !"
echo "字符串拼接 : \" ${greet}\"\n"
echo "获取字符串长度 : \"${#greet}\"\n" # 0~length-1,与java中相同
echo "提取字符串 : \"${greet:1:4}\"\n" # 下标从0开始,从1开始计算4个
echo "查找子字符串 : \n"
echo `expr index "${greet} hello"` # 下标是从1开始计算的
Copier après la connexion
6 : Tableau Shell (peut stocker différents types de données, l'indice commence à 0)
定义:${数组名[下标]} 例如: valuen = ${array_name[n]}
使用@符号可以获取数组中的所有元素,例如:echo ${array_name[@]}

获取数组长度:
# 取得数组元素的个数
length=${#array_name[@]}
# 或者
length=${#array_name[*]}
# 取得数组单个元素的长度
lengthn=${#array_name[n]}
Copier après la connexion
7 : Annotation

Commentaires sur une seule ligne ---- (utilisez # pour les commentaires)

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 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

Outils d'IA chauds

Undresser.AI Undress

Undresser.AI Undress

Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover

AI Clothes Remover

Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool

Undress AI Tool

Images de déshabillage gratuites

Clothoff.io

Clothoff.io

Dissolvant de vêtements AI

AI Hentai Generator

AI Hentai Generator

Générez AI Hentai gratuitement.

Article chaud

R.E.P.O. Crystals d'énergie expliqués et ce qu'ils font (cristal jaune)
2 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
Repo: Comment relancer ses coéquipiers
4 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
Hello Kitty Island Adventure: Comment obtenir des graines géantes
3 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
Combien de temps faut-il pour battre Split Fiction?
3 Il y a quelques semaines By DDD

Outils chauds

Bloc-notes++7.3.1

Bloc-notes++7.3.1

Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise

SublimeText3 version chinoise

Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1

Envoyer Studio 13.0.1

Puissant environnement de développement intégré PHP

Dreamweaver CS6

Dreamweaver CS6

Outils de développement Web visuel

SublimeText3 version Mac

SublimeText3 version Mac

Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Android TV Box obtient une mise à niveau non officielle d'Ubuntu 24.04 Android TV Box obtient une mise à niveau non officielle d'Ubuntu 24.04 Sep 05, 2024 am 06:33 AM

Android TV Box obtient une mise à niveau non officielle d'Ubuntu 24.04

Entrée de la version Web Deepseek Entrée du site officiel Deepseek Entrée de la version Web Deepseek Entrée du site officiel Deepseek Feb 19, 2025 pm 04:54 PM

Entrée de la version Web Deepseek Entrée du site officiel Deepseek

Comment installer Deepseek Comment installer Deepseek Feb 19, 2025 pm 05:48 PM

Comment installer Deepseek

Adresse de téléchargement de l'application de portefeuille BitPie Bitpie Adresse de téléchargement de l'application de portefeuille BitPie Bitpie Sep 10, 2024 pm 12:10 PM

Adresse de téléchargement de l'application de portefeuille BitPie Bitpie

Installation officielle du site officiel de Bitget (Guide du débutant 2025) Installation officielle du site officiel de Bitget (Guide du débutant 2025) Feb 21, 2025 pm 08:42 PM

Installation officielle du site officiel de Bitget (Guide du débutant 2025)

Explication détaillée : commande de paramètre de jugement variable du script Shell Explication détaillée : commande de paramètre de jugement variable du script Shell Sep 02, 2024 pm 03:25 PM

Explication détaillée : commande de paramètre de jugement variable du script Shell

Zabbix 3.4 Installation de la compilation du code source Zabbix 3.4 Installation de la compilation du code source Sep 04, 2024 am 07:32 AM

Zabbix 3.4 Installation de la compilation du code source

Le package d'installation OUYI OKX est directement inclus Le package d'installation OUYI OKX est directement inclus Feb 21, 2025 pm 08:00 PM

Le package d'installation OUYI OKX est directement inclus

See all articles