当前位置: 首页 > 科技观察

如何在Linux中使用source命令_0

时间:2023-03-14 15:10:20 科技观察

source命令是一个内置的shell命令,用于从当前shell会话中的文件中读取和执行命令。source命令通常用于在当前shell中保存和更改环境变量。简而言之,获取将在当前shell中运行执行命令的脚本。source命令可以用来:刷新当前的shell环境在当前环境中执行一个shell脚本使用source从一个脚本中导入环境中的一个shell函数从另一个shell脚本中读取变量source命令的语法需要一个文件,如果提供了参数,那么它将用作传递给脚本的位置参数。sourceFILENAME[ARGUMENTS]也可以用来代替source命令:.FILENAME[ARGUMENTS]source命令的使用方法1.刷新当前的shell环境你可以在当前的shell环境中定义一个别名。为ls-al定义一个别名叫ll:[root@localhost~]#echo"aliasll='ls-al'">>~/.bashrc在~/.bashrc文件中定义别名后,就可以使用源刷新当前Shell环境的命令:[root@localhost~]#source~/.bashrc现在可以使用ll别名列出当前目录下的所有文件,包括隐藏文件。2、使用source在当前环境下执行Shell脚本Shell脚本并不知道你在当前Shell环境下定义的变量。source命令可用于在当前会话中执行您的shell脚本。在下面定义一个变量:[root@localhost~]#website=https://www.linuxprobe.com创建一个脚本:[root@localhost~]#vimweb.sh#!/bin/bashecho$website在当前使用源在shell会话中执行:[root@localhost~]#sourceweb.shhttps://www.linuxprobe.com使用sh运行脚本时,找不到环境中定义的变量:3.在environmentfromthescript函数首先创建一个脚本,定义一个函数:[root@localhost~]#vimfunc.sh#!/bin/bashfoo(){echo"testfunction!"}将上面脚本的函数导入到当前shell会话,使用以下命令:[root@localhost~]#sourcefunc.sh在终端中执行以下func.sh脚本中的foo函数并尝试:[root@localhost~]#footestfunction!脚本执行完后,可以看到当前的response脚本中的函数可以在终端执行了。4.从另一个shell脚本中读取变量首先创建一个带有一些变量的shell脚本,请输入:[root@localhost~]#vimvar.sh#!/bin/basha=1b=2c=3创建另一个脚本,脚本读取上一个脚本中的变量var.sh:[root@localhost~]#vimread.sh#!/bin/bashsource~/var.shecho$aecho$becho$c脚本中首先使用source将var.sh中的变量被传递到当前会话,然后echo显示变量值。下面执行read.sh看看:5.读取和执行命令source命令可以从一个文件中读取和执行命令。下面一个文本文件中有两条命令,使用source命令运行文件,看看里面的命令是否会被执行。下面新建一个cmd.txt文件,保存两条命令:[root@localhost~]#catcmd.txtipaddate接下来使用source执行这个文件:[root@localhost~]#sourcecmd.txt总结source命令执行脚本在当前shell,而exec命令在新shell中运行。