搜尋
首頁系統教程LinuxLinux 中的神奇命令:source

Linux 中的神奇命令:source

Feb 10, 2024 pm 03:06 PM
linuxlinux教程linux系統linux指令shell腳本排列嵌入式linuxlinux入門linux學習

Linux 是一個強大且靈活的作業系統,它提供了許多內建的 shell 命令,讓我們可以輕鬆管理和控制系統的行為。其中一個很有用的指令是 source,它可以讓我們從檔案讀取並執行指令,而不需要建立新的進程或環境。 source 指令有什麼作用?它如何使用?它與 bash 指令有什麼不同?本文將為你詳細介紹 source 指令的奧秘,讓你駕馭 Linux 的超強能力。

關於source指令及其執行方式: 在Linux系統中,source是內建的Shell指令,它會讀取並執行目前Shell中檔案的內容。這些檔案通常包含一系列要交給TCL解釋器讀取和執行的命令。

如果提供了任何參數,它們將成為將由source執行的[檔案名稱]的位置參數。否則,位置參數保持不變。

$PATH中的條目用於查找包含[檔案名稱]的目錄,然而,如果檔案在$PATH中不存在,它將在當前目錄中搜尋檔案。 source指令沒有選項,參數只能是檔案名稱。

文法:

source [filename] [arguments]

其中:

[filename]:要由source指令執行的檔案的名稱或路徑。

[arguments]:當檔案執行時,您提供的任何參數將成為位置參數。

點(句點)字元可以取代source指令,產生相同的輸出:

. [filename] [arguments]

範例:

建立一個名為 linuxmi.txt 的文件,並將以下命令貼到其中。

echo “Hello Linux迷 www.linuxmi.com”
pwd
date
echo $PATH

現在執行source指令,使用你剛剛建立的檔案的正確路徑。確保你使用了正確的檔案路徑。

source linuxmi.txt

以上的source指令讀取並執行了提供的檔案中的指令。

輸出如下:

Linux 中的神奇命令:source

重要提示: 小心! ”./”和”source”不完全相同。

“./script”將腳本作為可執行檔運行,啟動一個新的shell來運行它。 「source script」從目前shell環境中讀取並執行檔案中的命令。注意:”./script”不等於”. script”,但”. script”等同於”source script”。

如何使用source指令讀取設定檔:

#借助source命令,我們可以建立一個設定檔並在另一個檔案中讀取它。

基本上,我們需要建立兩個檔案:

sample-config.sh → 包含一些隨機配置

config-reader.sh → 讀取設定檔並執行一些操作。

在同一個目錄下建立這些檔案。

建立 sample-config.sh 並新增以下命令:

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

article_list="https://linux.linuxmi.com/"

建立config-reader.sh並新增以下命令:

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

config-reader.sh檔案包含一個使用設定檔的source指令。它在後續命令中使用了config-reader.sh檔案中的file變數。

輸出:

執行以下命令以讀取設定並在目前檔案中使用它們 source config-reader.sh

如下圖:

Linux 中的神奇命令:source

刷新目前的Shell環境:

有時我們希望為經常使用的命令設定一個別名,以便在任何Shell會話中更容易使用。

我們可以透過建立一個如下所示的Shell別名指令來開始:

alias ll=’ls -ltrh’

此指令以長格式列出目前目錄中的所有檔案和資料夾,並依時間戳升序排列,以易讀的格式顯示。

Linux 中的神奇命令:source

實際上,目前的命令存在一個問題,它在當前的Shell會話中運行得很好,但我們無法在當前Shell會話之外訪問它。

但是,我們有一個解決方案,可以使其成為一個永久命令,以便在任何Shell會話中都可以存取它。

我們只需要將這個別名加入到.bashrc(或.zsh對於macOS)檔案中,該檔案位於主目錄中。

sudo vim ~/.bashrc

在”#some more ls aliases”部分下面,添加以下內容:

alias ll = 'ls -ltrh'

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

alias ll = 'ls -ltrh'
alias g = 'git'
alias k = 'kubectl'
Linux 中的神奇命令:source

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

source ~/.bashrc

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

以上是Linux 中的神奇命令:source的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述
本文轉載於:良许Linux教程网。如有侵權,請聯絡admin@php.cn刪除
Linux實際上有什麼好處?Linux實際上有什麼好處?Apr 12, 2025 am 12:20 AM

Linux適用於服務器、開發環境和嵌入式系統。 1.作為服務器操作系統,Linux穩定高效,常用於部署高並發應用。 2.作為開發環境,Linux提供高效的命令行工具和包管理系統,提升開發效率。 3.在嵌入式系統中,Linux輕量且可定制,適合資源有限的環境。

在Linux上掌握道德黑客的基本工具和框架在Linux上掌握道德黑客的基本工具和框架Apr 11, 2025 am 09:11 AM

簡介:通過基於Linux的道德黑客攻擊數字邊界 在我們越來越相互聯繫的世界中,網絡安全至關重要。 道德黑客入侵和滲透測試對於主動識別和減輕脆弱性至關重要

如何學習Linux基礎知識?如何學習Linux基礎知識?Apr 10, 2025 am 09:32 AM

Linux基礎學習從零開始的方法包括:1.了解文件系統和命令行界面,2.掌握基本命令如ls、cd、mkdir,3.學習文件操作,如創建和編輯文件,4.探索高級用法如管道和grep命令,5.掌握調試技巧和性能優化,6.通過實踐和探索不斷提陞技能。

Linux最有用的是什麼?Linux最有用的是什麼?Apr 09, 2025 am 12:02 AM

Linux在服務器、嵌入式系統和桌面環境中的應用廣泛。 1)在服務器領域,Linux因其穩定性和安全性成為託管網站、數據庫和應用的理想選擇。 2)在嵌入式系統中,Linux因其高度定制性和高效性而受歡迎。 3)在桌面環境中,Linux提供了多種桌面環境,滿足不同用戶需求。

Linux的缺點是什麼?Linux的缺點是什麼?Apr 08, 2025 am 12:01 AM

Linux的缺點包括用戶體驗、軟件兼容性、硬件支持和學習曲線。 1.用戶體驗不如Windows或macOS友好,依賴命令行界面。 2.軟件兼容性不如其他系統,缺乏許多商業軟件的原生版本。 3.硬件支持不如Windows全面,可能需要手動編譯驅動程序。 4.學習曲線較陡峭,掌握命令行操作需要時間和耐心。

Linux難以學習嗎?Linux難以學習嗎?Apr 07, 2025 am 12:01 AM

Linuxisnothardtolearn,butthedifficultydependsonyourbackgroundandgoals.ForthosewithOSexperience,especiallycommand-linefamiliarity,Linuxisaneasytransition.Beginnersmayfaceasteeperlearningcurvebutcanmanagewithproperresources.Linux'sopen-sourcenature,bas

Linux的5個基本組件是什麼?Linux的5個基本組件是什麼?Apr 06, 2025 am 12:05 AM

Linux的五個基本組件是:1.內核,管理硬件資源;2.系統庫,提供函數和服務;3.Shell,用戶與系統交互的接口;4.文件系統,存儲和組織數據;5.應用程序,利用系統資源實現功能。

Ubuntu Home Automation:使用開源工具建立智能的居住空間Ubuntu Home Automation:使用開源工具建立智能的居住空間Apr 05, 2025 am 09:19 AM

開啟智能家居新篇章:基於Ubuntu的開源家庭自動化系統 智能家居技術徹底改變了我們與生活空間的互動方式,為日常生活帶來了便利、安全和能源效率。從遠程控制燈光和電器,到監控安全攝像頭和自動化氣候控制,智能家居技術變得越來越普及。 然而,許多商業智能家居系統存在局限性:高昂的成本、隱私問題以及有限的兼容性。幸運的是,開源軟件解決方案結合Ubuntu的強大功能,提供了一種替代方案——允許用戶創建可定制、經濟高效且安全的智能家居生態系統。 本指南將探討如何使用Ubuntu和開源工具設置家庭自動化系統。

See all articles

熱AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover

AI Clothes Remover

用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool

Undress AI Tool

免費脫衣圖片

Clothoff.io

Clothoff.io

AI脫衣器

AI Hentai Generator

AI Hentai Generator

免費產生 AI 無盡。

熱門文章

R.E.P.O.能量晶體解釋及其做什麼(黃色晶體)
3 週前By尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.最佳圖形設置
3 週前By尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.如果您聽不到任何人,如何修復音頻
3 週前By尊渡假赌尊渡假赌尊渡假赌
WWE 2K25:如何解鎖Myrise中的所有內容
3 週前By尊渡假赌尊渡假赌尊渡假赌

熱工具

WebStorm Mac版

WebStorm Mac版

好用的JavaScript開發工具

Dreamweaver Mac版

Dreamweaver Mac版

視覺化網頁開發工具

PhpStorm Mac 版本

PhpStorm Mac 版本

最新(2018.2.1 )專業的PHP整合開發工具

MantisBT

MantisBT

Mantis是一個易於部署的基於Web的缺陷追蹤工具,用於幫助產品缺陷追蹤。它需要PHP、MySQL和一個Web伺服器。請查看我們的演示和託管服務。

禪工作室 13.0.1

禪工作室 13.0.1

強大的PHP整合開發環境