#./和#之间的区别../

use*_*747 4 linux bash

执行脚本之间的区别是什么

# ./test
Run Code Online (Sandbox Code Playgroud)

# . ./test 
Run Code Online (Sandbox Code Playgroud)

例如,test是简单的脚本

#!/bin/bash
export OWNER_NAME="ANGEL 12"
export ALIAS="angelique"
Run Code Online (Sandbox Code Playgroud)

我知道结果,但我不确定实际发生了什么

谢谢

Thi*_*ter 7

./foo执行foo,如果它被标记为可执行的,并具有一个适当的shebang行(或者是ELF二进制).它将在一个新的过程中执行.

. ./foo或者. foo当前 shell中加载脚本.它等于source foo

使用示例代码,如果希望导出的变量在shell中可用,则需要使用第二种方法.