了解流浪汉和宅基地变数

问题描述:

我在回顾github repository中托管的laravel homestead源代码,并确定应用程序的工作原理,并且想知道变量${1} - ${4}, ${PATH_SSL}的声明位置。了解流浪汉和宅基地变数

我想更好地了解laravel宅基地是如何工作的。

谢谢!

那些不是Ruby。这就像Ruby变量,但在bash脚本中。例如,herePATH_SSL正在定义中。此外,在接下来的行中,它正在被使用(评估)来形成另一个文本。在Bash中,你使用评估语法${PATH_SSL}

PATH_SSL="/etc/nginx/ssl" 
PATH_KEY="${PATH_SSL}/${1}.key" 
PATH_CSR="${PATH_SSL}/${1}.csr" 
PATH_CRT="${PATH_SSL}/${1}.crt" 

${1}${2}等都是代表,同时呼吁在命令行该脚本使用的参数的特殊变量。

+0

谢谢,我现在明白了。我还有一个关于这个[line]的问题(https://github.com/laravel/homestead/blob/master/Vagrantfile#L5)。我无法理解'''confDir = $ confDir || =''' – yaeykay

+0

这个文件的含义是一个ruby代码。你可以把它分成两部分。一种是双变量赋值'confDir = $ confDir =“someValue”',第二部分是'someVar || = File.expand_path(“〜/ .homestead”)'条件赋值运算符。 第一个操作基本上为两个变量赋值。 仅当someVar为false或nil时,第二个操作才会将'File.exppa ...'的值赋给'someVar'。 所以,如果你把这两个结合起来,你最终会得到:如果没有定义'$ confDir'变量,则将它的值设置为'File.expand ...',否则不做任何事情,然后将任何内容分配给本地var'confDir '。 – Uzbekjon

+0

@yaeykay,如果这回答你的问题,考虑选择它作为答案,以便你的问题被标记为关闭。 – Uzbekjon