此括号内的shell脚本行( IFS=':' read -r -a array <<< "$passPercent" )
在做什么。
还请说明此行中每个参数的用途。
$ passpercent实际上是一个在其中存储一些curl数据的变量。
答案 0 :(得分:0)
read -a array
读取文本并将其从标准输入中拆分为变量array
。拆分发生在IFS
的值上,该值在此操作期间设置为冒号。
-r
的{{1}}选项会禁用一些带有反斜杠的旧行为,除非您试图模拟shell本身如何处理反斜杠,否则基本上应始终使用该反斜杠。
“此处字符串” read
将<<<value
作为标准输入传递给流程。
括号使命令在子shell中运行。这里没有特别的意义。通常,我们使用子外壳来限制变量分配的范围(也许在本地覆盖value
;但在这里,无论如何IFS
仅在IFS
的持续时间内才分配)或更改工作目录。
也许我应该特别指出
read
仅在执行variable=value command
的过程中设置variable
的值,这与
command
从此处开始设置variable=value; command
的值,然后执行variable
和变量设置为该值的任何后续代码,直到再次重新分配它,或者此shell实例终止。