偷偷摘套内射激情视频,久久精品99国产国产精,中文字幕无线乱码人妻,中文在线中文a,性爽19p

Linux 中的 source 命令是什么?它又是如何工作的呢?

系統(tǒng) Linux
為了方便理解 source 命令,下面我們是對(duì)變量做一個(gè)簡(jiǎn)短的解釋。

source 命令可以在當(dāng)前 shell 中執(zhí)行文件中的命令,也可以用于刷新環(huán)境變量。不過(guò)老實(shí)說(shuō),它的主要用途就是用于刷新環(huán)境變量。其語(yǔ)法格式如下所示:

source filename [options]

也可以用一個(gè)點(diǎn) . 來(lái)代替 source 命令:

. filename [options]

source 命令是如何工作的

這個(gè)命令的語(yǔ)法很簡(jiǎn)單,但是要理解它,需要稍微了解一些 Linux 概念。如果你是 Linux 新手,可能對(duì)于變量是什么只有一個(gè)比較模糊的概念。不過(guò)沒(méi)關(guān)系,我們都是從這個(gè)階段過(guò)來(lái)的。

為了方便理解 source 命令,下面我們是對(duì)變量做一個(gè)簡(jiǎn)短的解釋。

關(guān)于變量

你可以打開一個(gè) bash 終端來(lái)創(chuàng)建一個(gè)新的變量,變量可以被認(rèn)為是一個(gè)占位符,可以用來(lái)指向一條信息(字母,數(shù)字或者符號(hào)等)。

比如,我們創(chuàng)建一個(gè)名為 name 的變量,將其賦值為 Christopher。

在 bash 中,命名變量的格式為:

variable_name=your_variable

注意,不要在等號(hào) = 和文本之間添加空格。

$ name=Christopher
$ echo $name
Christopher

那么,如果我只鍵入變量名會(huì)怎樣呢?看下面的例子:

$ echo name
name

如果忘記帶美元符號(hào) $,比如上面的例子,bash 就會(huì)直接返回你輸入的文本。

變量的調(diào)用可以在任何調(diào)用的位置,所以我們也可以將其放在如下代碼中:

$ echo "Hello, $name. $name is a great name. It's good to meet you."
Hello, Christopher. Christopher is a great name. It's good to meet you.

變量可以幫助我們做很多事情,上述對(duì)變量的簡(jiǎn)單介紹應(yīng)該可以讓大家了解它是如何工作的了。

環(huán)境變量與 shell 變量

理解 source 命令的另外一個(gè)關(guān)鍵問(wèn)題,就是關(guān)于變量的持久性,這是用來(lái)思考 shell 變量和環(huán)境變量之間區(qū)別的一種簡(jiǎn)單方法。

簡(jiǎn)單地說(shuō),如果在終端 shell 中創(chuàng)建一個(gè)變量,那么一旦退出該 shell,它就會(huì)丟失。

相比之下,環(huán)境變量會(huì)持久性的保存在操作系統(tǒng)中,而且通常都是使用大寫字母。

其中一個(gè)例子,就是用戶名,操作系統(tǒng)中其變量名稱為 $USER。如下所示:

$ echo $USER
christopher

上面我們是介紹了一些關(guān)于環(huán)境變量和 shell 變量的區(qū)別,那么這跟 source 命令有啥關(guān)系呢?

source 和 bash

如果你使用過(guò) Linux,可能會(huì)遇到過(guò)這兩個(gè)命令,并且認(rèn)為他們的功能是一樣的。畢竟 source 和 bash 都可以用來(lái)執(zhí)行腳本。

source 命令會(huì)在當(dāng)前 shell 中執(zhí)行,而 bash 會(huì)創(chuàng)建一個(gè)新的 shell 會(huì)話。這并不明顯,因?yàn)闆](méi)有顯示新窗口。

下面我們創(chuàng)建一個(gè)名為 echo.sh 的腳本,內(nèi)容如下:

#! bin/bash
echo $USER
echo $name

然后在終端中給 name 賦值:

$ name=chris

接下來(lái),我們分別使用 bash 和 source 命令來(lái)執(zhí)行一下這個(gè)腳本,看如下結(jié)果:

$ bash echo.sh 
christopher
$ source echo.sh 
christopher
chris
$ . echo.sh 
christopher
chris

正如上述結(jié)果,當(dāng)使用 bash 命令執(zhí)行腳本時(shí),shell 變量 $name 并沒(méi)有被識(shí)別出來(lái)。

使用 source 命令刷新環(huán)境變量

source 還可以用于更新當(dāng)前 shell 中的環(huán)境變量,一個(gè)常見的例子是在當(dāng)前 shell 中更新 bash 配置文件。

用戶可能想要修改他們的 bash 配置文件,比如創(chuàng)建一個(gè)別名。通常,保存配置后,需要打開一個(gè)新的終端窗口才能看到更改生效。

$ source .bashrc

運(yùn)行此操作將刷新當(dāng)前 shell 中的設(shè)置,而不會(huì)強(qiáng)制您打開新的終端。

責(zé)任編輯:龐桂玉 來(lái)源: TIAP
相關(guān)推薦

2021-05-16 08:22:19

Linux命令 Source

2021-05-31 11:30:43

Linuxsource命令

2024-07-11 16:32:13

代碼Java

2022-11-14 15:07:09

Linux管道

2022-11-04 08:59:56

2025-02-17 09:03:26

DeepSeekAI工具人工智能

2023-05-18 22:51:08

2020-01-14 10:57:39

內(nèi)存泄漏虛擬機(jī)

2019-08-21 09:56:43

2023-12-27 08:36:27

2022-02-28 08:17:24

重載函數(shù)JS前端

2022-11-07 12:45:30

ripgrep命令Linux

2024-11-15 16:15:59

2019-09-18 09:40:48

數(shù)據(jù)湖數(shù)據(jù)分析數(shù)據(jù)

2023-03-02 08:48:43

Linuxsubshell

2020-02-05 15:05:11

區(qū)塊鏈時(shí)間戳分布式

2024-12-26 17:04:47

2019-09-20 09:37:38

限流Java應(yīng)用

2023-03-01 09:49:23

2018-12-27 21:54:22

點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)