百摩网
当前位置: 首页 生活百科

linux的命令行语法(Linux中source命令的使用方式)

时间:2023-07-28 作者: 小编 阅读量: 7 栏目名: 生活百科

source命令是一个内置的shell命令,用于从当前shell会话中的文件读取和执行命令。简而言之,source一个脚本,将会在当前shell中运行execute命令。source完脚本之后,可以看到在当前回话的终端中可以执行脚本里面的函数。/bin/bashsource~/var.shecho$aecho$becho$c在脚本中首先使用source将var.sh中的变量到处到当前回话,然后echo显示变量值。下面的一个文本文件中带有两个命令,使用source命令运行该文件,看看是否会执行里面的命令。

source命令是一个内置的shell命令,用于从当前shell会话中的文件读取和执行命令。source命令通常用于保留、更改当前shell中的环境变量。简而言之,source一个脚本,将会在当前shell中运行execute命令。

source命令可用于:

  • 刷新当前的shell环境
  • 在当前环境使用source执行Shell脚本
  • 从脚本中导入环境中一个Shell函数
  • 从另一个Shell脚本中读取变量

source命令的语法

source命令它需要一个文件,如果提供了参数,那么将用作传递脚本的位置参数。

source FILENAME [ARGUMENTS]

也可以使用.替代source命令:

. FILENAME [ARGUMENTS]

如何使用source命令

1. 刷新当前的shell环境

可以在当前的shell环境中定义一个别名。为ls -al定义一个别名为ll:

[root@localhost ~]# echo "alias ll='ls -al'" >> ~/.bashrc

在~/.bashrc文件中定义完别名,可以使用source命令刷新当前shell环境:

[root@localhost ~]# source ~/.bashrc

现在可以使用ll别名列出当前目录里所有文件了,包括隐藏文件。

2. 在当前环境使用source执行Shell脚本

Shell脚本不知道你在当前Shell环境中定义的变量。source命令可用于在当前会话中执行你的Shell脚本。

下面在定义一个变量:

[root@localhost ~]# website=https://www.linuxprobe.com

创建一个脚本:

[root@localhost ~]# vim web.sh #!/bin/bashecho $website

使用source在当前shell会话中执行它:

[root@localhost ~]# source web.sh https://www.linuxprobe.com

当使用sh运行脚本时,找不到环境中定义的变量:

3. 从脚本中导入环境中一个Shell函数

首先创建一个脚本,定义一个函数:

[root@localhost ~]# vim func.sh#!/bin/bashfoo(){echo "test function!"}

要在当前的shell会话中导入上述脚本的功能,使用下面命令:

[root@localhost ~]# source func.sh

下面在终端中执行以下func.sh脚本中的foo函数试试:

[root@localhost ~]# footest function!

source完脚本之后,可以看到在当前回话的终端中可以执行脚本里面的函数。

4. 从另一个Shell脚本中读取变量

首先创建带有一些变量的shell脚本,请输入:

[root@localhost ~]# vim var.sh#!/bin/basha=1b=2c=3

再创建一个脚本,该脚本读取上一个脚本var.sh中的变量:

[root@localhost ~]# vim read.sh #!/bin/bashsource ~/var.shecho $aecho $becho $c

在脚本中首先使用source将var.sh中的变量到处到当前回话,然后echo显示变量值。下面执行read.sh看一下:

5. 读取并执行命令

source命令可以从文件读取和执行命令。下面的一个文本文件中带有两个命令,使用source命令运行该文件,看看是否会执行里面的命令。

下面创建一个文件cmd.txt,保存两个命令:

[root@localhost ~]# cat cmd.txt ip addate

下面使用source执行这个文件:

[root@localhost ~]# source cmd.txt

总结

source命令在当前shell中执行脚本,而exec命令在新的shell中运行。

    推荐阅读
  • 美洲豹是老虎还是豹子(美洲豹和美洲虎有什么区别)

    黑豹通常是指豹子或美洲虎的深色或黑色相,具体取决于位置。它们仍然很大,体长接近六英尺,尾巴长达三英尺。有记录以来最大的美洲狮重达230多磅,但雄性的平均体重为125至220磅,雌性的平均体重约为125至135磅。对于美洲的大型猫科动物来说,这种动物的活动范围是最大的;从加拿大到达南美洲南部,从海岸到海岸。美洲狮脚大,腿长,尤其是后腿,赋予了它们出色的跳跃和跳跃能力。

  • 冻梨软了还可以再冻么(冻梨软了能不能再冻)

    冻梨是将梨子经过冷冻后制作而成的,本身就经过了一次冷冻的程序,在解冻之后会流失一定的营养成分,如果将解冻后的冻梨再次经过冷冻、解冻的话,也会加速食物成分的变化,因此冻梨软了之后最好是不要再进行冷冻了,以免发生变质的情况。建议常温或冷藏。冻梨中含有较高的水分、糖分、维生素和矿物质,在温度较高时很容易滋生细菌而发生变质的情况,所以需要将其尽可能的放在低温的环境下,以抑制冻梨中微生物的生长。

  • 扁豆要怎样储存(扁豆的储存方式)

    以下内容大家不妨参考一二希望能帮到您!扁豆要怎样储存常温保存:扁豆并不是很容易坏掉的食材,在常温条件下,通风阴凉处保存,就可以保存比较久。在把扁豆放到冰箱之前,最好撕去扁豆表面的筋,用开水焯熟扁豆,再晾凉,最后再放进冰箱。

  • 王者荣耀回城特效在哪里(原来是这里设置)

    王者荣耀回城特效在哪里?下面内容希望能帮助到你,我们来一起看看吧!王者荣耀回城特效在哪里首页点击左下角英雄,然后点击你想设置的英雄。英雄界面左边有属性、故事、装备、海报和定制,选择定制。定制左边有星元皮肤、动作和局内表现,选择局内表现。最下面中间就是回城特效了,另外荣耀播报和击败特效也是在这里更改的。

  • 科学家推测硅基生命(如果这个世界上真的存在硅基生物)

    硅基生物依存的环境有两个方向:极其炎热,极度寒冷。基于高温的硅基生物1891年,德国化学家JuliusScheiner描述了硅基生命的可能性。科学上对硅基生命的研究不温不火地发表过一些,现在也还在继续。迪金森和斯凯勒尔认为,硅基生物可能看起来像晶体。在寒冷的流浪行星上,低温下超导的物质允许复杂的电磁现象自发地积累直到出现智能。

  • 鲜百合哪些人不能吃(百合简介)

    鲜百合哪些人不能吃风寒咳嗽、脾胃虚寒及大便稀溏者不宜多食。除此之外其他人一般都可以吃百合,但是孕妇一般是不建议食用的,因为这关系到宝宝以及孕妇本身的健康,如果想要吃应该在医师的指导下进行。近年更有不少经过人工杂交而产生的新品种,如亚洲百合、香水百合、火百合等。鳞茎含丰富淀粉,可食,亦作药用。

  • 子宫积液怎么引起来(子宫积液是怎么引起的)

    子宫积液也称为宫腔积液,它可以发生在不同的年龄段,但是不同阶段的人导致的原因也是不一样的。出现子宫积液往往表现为下腹坠痛,有的时候有白带增多以及血性分泌物的情况出现。引起子宫积液的原因有很多,如子宫出血、子宫内膜炎、子宫颈管粘连或堵塞,甚至器官的畸形、人工流产等都可以引起子宫积液。出现子宫积液,目前主要是采取抗生素药物来进行积极的消炎治疗。

  • cf机械迷城宝箱怎么获得 cf端游机械迷城宝箱能开出什么

    cf机械迷城宝箱怎么获得机械迷城宝箱由系统随机发放给线上玩家。如果想要获得的话一定要多上线。cf机械迷城宝箱中可以开出王者之城、王者赤魂、王者青龙武器,最贵的武器拍卖行能买到70WCF点劵,最便宜的也能开出价值8800CF点劵。游戏讲述了全球两大佣兵集团GlobalRisk和BlackList间的对决。游戏中有团队模式、战队赛、爆破模式、幽灵模式等多种模式。引进了“缺人补充”形式的即时加入系统。

  • 行李箱最大的尺寸是多少 行李箱最大有多少尺寸的

    市面上的行李箱大小,通常是根据航空公司的随身登机箱及托运箱尺寸规定为标准。每件的最大尺寸为三边总和小于158厘米,而手提行李则每件的最大尺寸必须小于56×36×23厘米。

  • 炒薏苡仁的功效与作用(盘点炒薏苡仁的功效)

    炒薏苡仁的功效与作用有利水消肿、健脾去湿、舒筋除痹、清热排脓等功效,为常用的利水渗湿药。此外,薏仁算是榖物的一种,以水煮软或炒熟,比较有利于肠胃的吸收,身体常觉疲倦没力气的人,可以多吃。薏仁中含有丰富的蛋白质分解酵素,能使皮肤角质软化,对皮肤赘疣、粗糙不光滑者,长期服用也有疗效。