我正在尝试使用curl从互联网上获取脚本文件,如下所示:source <( curl url ); echo done我看到'完成' 在curl开始下载文件之前就已经回复了!
这是实际的命令和输出:
-bash-3.2# source <( curl --insecure https://raw.github.com/gurjeet/pg_dev_env/master/.bashrc ) ; echo done
done
-bash-3.2# % Total % Received % Xferd Average Speed Time Time Time Current
Dload Upload Total Spent Left Speed
100 2833 100 2833 0 0 6746 0 --:--:-- --:--:-- --:--:-- 0
Run Code Online (Sandbox Code Playgroud)
我并不太担心"完成"在任何事情之前或之后被回应,我特别担心为什么源命令不会读取并对脚本采取行动!
这个命令在我的LinuxMint的bash上按预期工作,但不在CentOS服务器的bash上!
我编写的许多脚本都接受在单独的.config文件中设置的用户参数,并且来源于:
source "./Example.config" || exit
Run Code Online (Sandbox Code Playgroud)
为了清晰和健壮,我想允许用户在.config文件变量中包含空格,例如:
############################################################
## Example
############################################################
VAR1 = 25
VAR2 = Y
Run Code Online (Sandbox Code Playgroud)
而不是:
VAR1=25
VAR2=Y
Run Code Online (Sandbox Code Playgroud)
在bash脚本中是否有一种简单的方法允许这样做?如果是这样,怎么样?