Maison > Tutoriel système > Linux > La commande magique sous Linux : source

La commande magique sous Linux : source

PHPz
Libérer: 2024-02-10 15:06:02
avant
1460 Les gens l'ont consulté

Linux est un système d'exploitation puissant et flexible qui fournit de nombreuses commandes shell intégrées qui nous permettent de gérer et de contrôler facilement le comportement du système. Une commande très utile est source, qui nous permet de lire et d'exécuter des commandes à partir d'un fichier sans créer de nouveau processus ou environnement. Que fait la commande source ? Comment est-ce utilisé? En quoi est-ce différent des commandes bash ? Cet article vous présentera en détail les secrets de la commande source, vous permettant d'exploiter la super puissance de Linux.

À propos de la commande source et de sa méthode d'exécution : Dans les systèmes Linux, source est une commande Shell intégrée qui lit et exécute le contenu du fichier dans le Shell actuel. Ces fichiers contiennent généralement une série de commandes qui doivent être lues et exécutées par l'interpréteur TCL.

Si des arguments sont fournis, ils deviendront des arguments de position pour [nom de fichier] qui seront exécutés par la source. Sinon, les paramètres de position restent inchangés.

L'entrée dans $PATH est utilisée pour trouver le répertoire contenant [nom de fichier], cependant, si le fichier n'existe pas dans $PATH, il recherchera le fichier dans le répertoire courant. La commande source n'a aucune option et les paramètres ne peuvent être que des noms de fichiers.

Grammaire :

source [filename] [arguments]
Copier après la connexion

Parmi eux :

[filename] : Le nom ou le chemin du fichier à exécuter par la commande source.

[arguments] : lorsque le fichier est exécuté, tous les arguments que vous fournissez deviendront des arguments de position.

Le caractère

point (point) peut être utilisé à la place de la commande source, produisant le même résultat :

. [filename] [arguments]
Copier après la connexion

Exemple :

Créez un fichier appelé linuxmi.txt et collez-y les commandes suivantes.

echo “Hello Linux迷 www.linuxmi.com”
pwd
date
echo $PATH
Copier après la connexion

Exécutez maintenant la commande source en utilisant le chemin correct vers le fichier que vous venez de créer. Assurez-vous d'utiliser le chemin de fichier correct.

source linuxmi.txt

La commande source ci-dessus lit et exécute les commandes dans le fichier fourni.

Le résultat est le suivant :

Linux 中的神奇命令:source

Important : Soyez prudent ! "./" et "source" ne sont pas exactement les mêmes.

"./script" exécute le script sous forme de fichier exécutable, lançant un nouveau shell pour l'exécuter. "source script" lit et exécute les commandes du fichier à partir de l'environnement shell actuel. Remarque : "./script" n'est pas égal à ". script", mais ". script" est égal à "script source".

Comment utiliser la commande source pour lire le fichier de configuration :

Avec l'aide de la commande source, nous pouvons créer un fichier de configuration et le lire dans un autre fichier.

En gros, nous devons créer deux fichiers :

sample-config.sh → Contient une configuration aléatoire

config-reader.sh → Lisez le fichier de configuration et effectuez certaines opérations.

Créez ces fichiers dans le même répertoire.

Créez sample-config.sh et ajoutez les commandes suivantes :

profile_page="https://www.linuxmi.com/"

article_list="https://linux.linuxmi.com/"
Copier après la connexion

Créez config-reader.sh et ajoutez les commandes suivantes :

#!/usr/bin/env bash
source sample-config.sh
echo "*****************************"
echo "Profile Page : $profile_page"
echo "
List of Articles : $article_list"
echo "*****************************"
Copier après la connexion
Linux 中的神奇命令:source

Le fichier config-reader.sh contient une commande source qui utilise le fichier de configuration. Il utilise la variable file du fichier config-reader.sh dans les commandes suivantes.

Sortie :

Exécutez la commande suivante pour lire les configurations et les utiliser dans le fichier source actuel config-reader.sh

Comme indiqué ci-dessous :

Linux 中的神奇命令:source

Actualiser l'environnement Shell actuel :

Parfois, nous souhaitons définir un alias pour une commande fréquemment utilisée afin de la rendre plus facile à utiliser dans n'importe quelle session shell.

Nous pouvons commencer par créer une commande d'alias Shell comme celle-ci :

alias ll=’ls -ltrh’

Cette commande répertorie tous les fichiers et dossiers du répertoire actuel au format long, triés par horodatage par ordre croissant, affichés dans un format facile à lire.

Linux 中的神奇命令:source

En fait, il y a un problème avec la commande actuelle, elle fonctionne correctement dans la session shell en cours, mais nous ne pouvons pas y accéder en dehors de la session shell en cours.

Cependant, nous avons une solution pour en faire une commande permanente afin qu'elle soit accessible dans n'importe quelle session shell.

Il suffit d'ajouter cet alias au fichier .bashrc (ou .zsh pour macOS), qui se trouve dans le répertoire personnel.

sudo vim ~/.bashrc
Copier après la connexion

Sous la section "#quelques autres alias ls", ajoutez ce qui suit :

alias ll = 'ls -ltrh'
Copier après la connexion

我已经添加了类似的内容如下:

alias ll = 'ls -ltrh'
alias g = 'git'
alias k = 'kubectl'
Copier après la connexion
Linux 中的神奇命令:source

添加别名后,我们需要刷新当前的Shell环境,以便测试它是否按预期工作。

source ~/.bashrc
Copier après la connexion

通过本文,你应该对 source 命令有了更深入的了解,知道了它如何从文件中读取并执行命令,如何更新 bash shell 环境,以及它与 bash 命令的区别。source 命令是一个非常方便的内置 shell 命令,它可以让我们在同一个 shell 环境中修改变量或执行脚本,而不需要创建新的进程或环境。这样可以节省资源,提高效率,也可以避免一些潜在的错误或冲突。source 命令是 Linux 中的神奇命令之一,值得我们好好学习和使用。

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!

source:lxlinux.net
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