2017-07-21 29 views
0

谁能给我解释一下使用使用以下语法的使用切壳/ bash的脚本

[email protected] #All the arguments are individually double quoted 
var1=`echo ${var5} | cut -d "=" -f2| cut -d "|" -f1` 

我刚开始学习shell脚本,请正是这部分做什么解释吗?

回答

1

第一行应该很容易理解。它只是将传递给该命令的所有参数存储在一个变量中。

如果您启动脚本

bash script.sh these are my parameters 

然后VAR5将包含 “这是我的参数1 =”。

然后,第二线,它也是一个变量赋值其由出3个命令:

echo ${var5} 

这将简单地echo VAR5是输入到程序中。

cut -d "=" -f2 

这将需要输入,由“=”分隔符分割字符串,并采取第二个字段。如果var5包含a = b = c,则该命令将返回'b'。

cut -d "|" -f1 

这与上一个命令类似,但会使用'|'进行分割。作为分隔符,并将采取第一场。

既然你调用命令 bash k.sh paramater="a|b invalid=param"

然后:

  • “参数= A | B无效=参数” 将被分配到VAR5
  • “参数= A | B无效= param“将被回显
  • ”a | b invalid“将是第一次剪切的结果。
  • “a”将是第二次剪切的结果,并且将存储在var1中。