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

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

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

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中运行。

    推荐阅读
  • 格式化数据恢复软件免费版有哪些(格式化数据恢复软件推荐)

    但是有些用户可能会习惯性清空回收站,或者硬盘损坏、中毒导致文件丢失。支持NTFS、FAT、exFAT、ReFS文件系统。支持NTFS,NTFS5,FAT12,FAT16和FAT32磁盘格式。功能上也具备搜索后的文件筛选、预览等,甚至还支持完全擦除文件,保护隐私文件避免被恢复。不过只支持NTFS文件分区,使用也很简单,选择需要扫描的分区,等待扫描结果恢复文件即可。

  • 冻蒜的腌制方法和配料(怎样腌制冻蒜)

    以下内容大家不妨参考一二希望能帮到您!冻蒜的腌制方法和配料主料:蒜250g。准备好大蒜,剥皮。将剥了皮的蒜瓣儿放到一个可以密封的罐子,瓶子之类的容器里面,然后倒入醋,放入适量盐,封上口放到一个冷的地方。慢慢地,泡在醋中的蒜就会变绿。最后会变得通体碧绿的。大蒜变成绿色就可以吃啦。

  • 肉片胡萝卜丝(做肉片胡萝卜丝的步骤)

    接下来我们就一起去研究一下吧!肉片胡萝卜丝胡萝卜2只、猪肉约100g(自由)、花椒少许、葱末、蒜末适量。放胡萝卜丝翻炒。想吃烂乎点可放少许高汤闷一会儿。

  • 关于雨水节气谚语 关于雨水节气谚语大全

    (赣)2、水有雨,一年多水。(湘)4、水落了雨,阴阴沉沉到谷雨。(湘)7、雨水,暖惊蛰;暖雨水,冷惊蛰。(湘)11、打五更头,午时有日头。(浙)12、晨下雨当天晴,晚间下雨到天明。(浙)16、晨落雨晚担柴,下午落雨打草鞋。(苏、浙)18、滴黄昏头,行人不要愁;雨滴鸡开口,行人不要走。(浙)20、雨三日雨。(浙)21、天下雨晚上晴,连续三天不会停。

  • 上海示范区线进虹桥站(大江东探访虹桥站)

    5月22日起,上海地面公交和轨道交通将有条件逐步恢复运营。每辆车经过,执勤“大白”会一一查验相关证件。5月19日上午10点,进入上海虹桥站的道口有些拥堵。据介绍,上海铁路部门从5月18日起,在上海地区现有开行12趟列车的基础上,恢复开行上海虹桥站至宁波、阜阳西、石家庄3趟旅客列车,恢复开行上海站至南京、合肥南、杭州东、盐城5趟旅客列车。同时,将严格查验离沪人员核酸、抗原证明,坚决防止疫情外溢。

  • 太原最好的老字号山西菜(十大名吃新鲜出炉)

    十大名吃新鲜出炉12月10日,“晋情消费•嗨购龙城—太原市餐饮知名品牌系列评选活动”授牌大会举行本次评选活动按照自愿申报、入围初评、现场考核、张榜公示和公开授牌等程序,经过太原市烹饪餐饮业协会和专家评审组20多天的严。

  • 浮光跃金静影沉璧翻译(浮光跃金静影沉璧出处)

    我们一起去了解并探讨一下这个问题吧!浮光跃金静影沉璧翻译浮光跃金,静影沉璧翻译:波动的光闪着金色,静静的月影像沉入水中的玉璧。

  • 本人去办社保卡要准备什么(自己去办社保卡需要什么资料)

    马小蚁这边给大家整理好了办理社保卡需要的资料和流程,不过每个地方的规定都有些不同,可根据申领人的实际情况,提供相关资料到办理点办理。

  • 除了插秧还有哪些农活 插秧是什么农作物

    夏季农活有播种、插秧、耕田、采桑、积肥、除草、割麦以及打谷等。冬季农活主要是以积肥为主。

  • 和消防员有关的东西简笔画(和消防有关的简笔画)

    简笔画消防员怎么画消防员消防员简笔画手绘画个简笔画人文绘画,我来为大家选一些画的不错的和消防员有关的东西简笔画?希望有你满意的喜欢的简笔画图片,我们一起来找找吧总有一款适合你的简笔画!