0

0

Linux 中的神奇命令:source

PHPz

PHPz

发布时间:2024-02-10 15:06:02

|

3125人浏览过

|

来源于良许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 → 读取配置文件并执行一些操作。

Shell脚本编写基础 中文WORD版
Shell脚本编写基础 中文WORD版

Shell本身是一个用C语言编写的程序,它是用户使用Linux的桥梁。Shell既是一种命令语言,又是一种程序设计语言。作为命令语言,它交互式地解释和执行用户输入的命令;作为程序设计语言,它定义了各种变量和参数,并提供了许多在高级语言中才具有的控制结构,包括循环和分支。它虽然不是Linux系统核心的一部分,但它调用了系统核心的大部分功能来执行程序、建立文件并以并行的方式协调各个程序的运行。因此,对于用户来说,shell是最重要的实用程序,深入了解和熟练掌握shell的特性极其使用方法,是用好Linux系统

下载

在同一个目录下创建这些文件。

创建 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 中的神奇命令之一,值得我们好好学习和使用。

相关专题

更多
macOS怎么切换用户账户
macOS怎么切换用户账户

在 macOS 系统中,可通过多种方式切换用户账户。如点击苹果图标选择 “系统偏好设置”,打开 “用户与群组” 进行切换;或启用快速用户切换功能,通过菜单栏或控制中心的账户名称切换;还能使用快捷键 “Control+Command+Q” 锁定屏幕后切换。

331

2025.05.09

磁盘配额是什么
磁盘配额是什么

磁盘配额是计算机中指定磁盘的储存限制,就是管理员可以为用户所能使用的磁盘空间进行配额限制,每一用户只能使用最大配额范围内的磁盘空间。php中文网为大家提供各种磁盘配额相关的内容,教程,供大家免费下载安装。

1348

2023.06.21

如何安装LINUX
如何安装LINUX

本站专题提供如何安装LINUX的相关教程文章,还有相关的下载、课程,大家可以免费体验。

701

2023.06.29

linux find
linux find

find是linux命令,它将档案系统内符合 expression 的档案列出来。可以指要档案的名称、类别、时间、大小、权限等不同资讯的组合,只有完全相符的才会被列出来。find根据下列规则判断 path 和 expression,在命令列上第一个 - ( ) , ! 之前的部分为 path,之后的是 expression。还有指DOS 命令 find,Excel 函数 find等。本站专题提供linux find相关教程文章,还有相关

294

2023.06.30

linux修改文件名
linux修改文件名

本专题为大家提供linux修改文件名相关的文章,这些文章可以帮助用户快速轻松地完成文件名的修改工作,大家可以免费体验。

776

2023.07.05

linux系统安装教程
linux系统安装教程

linux系统是一种可以免费使用,自由传播,多用户、多任务、多线程、多CPU的操作系统。本专题提供linux系统安装教程相关的文章,大家可以免费体验。

572

2023.07.06

linux查看文件夹大小
linux查看文件夹大小

Linux是一种自由和开放源码的类Unix操作系统,存在着许多不同的Linux版本,但它们都使用了Linux内核。Linux可安装在各种计算机硬件设备中,比如手机、平板电脑、路由器、视频游戏控制台、台式计算机、大型机和超级计算机。linux怎么查看文件夹大小呢?php中文网给大家带来了相关的教程以及文章,欢迎大家前来学习阅读。

545

2023.07.20

linux查看ip命令
linux查看ip命令

本专题为大家提供linux查看ip命令相关文章内容,感兴趣的朋友可以免费下载体验试试。

297

2023.07.20

Java 桌面应用开发(JavaFX 实战)
Java 桌面应用开发(JavaFX 实战)

本专题系统讲解 Java 在桌面应用开发领域的实战应用,重点围绕 JavaFX 框架,涵盖界面布局、控件使用、事件处理、FXML、样式美化(CSS)、多线程与UI响应优化,以及桌面应用的打包与发布。通过完整示例项目,帮助学习者掌握 使用 Java 构建现代化、跨平台桌面应用程序的核心能力。

36

2026.01.14

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
相关推荐
/
热门推荐
/
最新课程
PostgreSQL 教程
PostgreSQL 教程

共48课时 | 7.1万人学习

Git 教程
Git 教程

共21课时 | 2.7万人学习

关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送

Copyright 2014-2026 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号