shell 脚本之间出传递变量

在Shell脚本之间传递变量通常涉及到两种情况:从父脚本向子脚本传递变量,以及从子脚本返回变量到父脚本。以下是如何在不同脚本之间传递变量的方法。

从父脚本向子脚本传递变量

你可以在调用子脚本时直接在命令行中传递变量,然后在子脚本中使用$1$2等来引用这些变量(这些变量代表了传递给脚本的参数)。

父脚本 (parent_script.sh):

#!/bin/bash

# 定义一个变量
my_variable="Hello from parent"

# 调用子脚本并传递变量
./child_script.sh "$my_variable"

子脚本 (child_script.sh):

 
  
#!/bin/bash

# 获取从父脚本传递过来的变量
passed_variable="$1"

# 打印变量
echo "Received variable from parent: $passed_variable"

运行父脚本时,它会调用子脚本并传递my_variable变量的值。子脚本中可以通过$1来获取这个值。

具体来说,$1 表示第一个参数,$2 表示第二个参数,依此类推。你可以使用$0来引用脚本自身的名称,$@$*来引用所有参数。

  • $0:脚本的名称。
  • $1:第一个参数。
  • $2:第二个参数。
  • ...
  • $9:第九个参数。
  • ${10}:第十个参数(当参数数量超过9时,需要使用大括号)。

从子脚本返回变量到父脚本

从子脚本返回变量到父脚本有几种方法,但最常见的是使用echoprintf在子脚本中输出变量的值,然后在父脚本中通过命令替换($(command))来捕获这个值。

子脚本 (child_script.sh):

 
  
#!/bin/bash

# 定义一个变量
my_variable="Hello from child"

# 输出变量的值
echo "$my_variable"

父脚本 (parent_script.sh):

 
  
#!/bin/bash

# 调用子脚本并捕获其输出
returned_variable=$(./child_script.sh)

# 打印捕获的变量
echo "Received variable from child: $returned_variable"

在这个例子中,子脚本输出一个变量的值,

你可能感兴趣的:(chrome,前端)