./xxx运行脚本和. xxx运行区别

系统自带的一个脚本如下:

[root@MiWiFi-RA69-srv ~]# cat .bashrc 
# .bashrc

# User specific aliases and functions

alias rm='rm -i'
alias cp='cp -i'
alias mv='mv -i'
alias vi=vim

# Source global definitions
if [ -f /etc/bashrc ]; then
	. /etc/bashrc
fi

看到有这么一句 . /etc/bashrc ,点和文件之间有个空格。
一般来说运行脚本都是 ./xxx 方式,那么和这个 . xxx 的其中一个区别就是不需要加运行权限。

比如:

[root@MiWiFi-RA69-srv ~]# cat a
echo abc
[root@MiWiFi-RA69-srv ~]# ./a
-bash: ./a: Permission denied
[root@MiWiFi-RA69-srv ~]# . a
abc