shell 遍历字符串数组并在遍历过程中与命令拼接成命令行字符串执行
时间: 2024-03-19 11:43:33 浏览: 252
shell 操作字符串
假设有一个字符串数组 `args` 存储了需要执行的命令及其参数,可以使用Shell中的`for`循环遍历整个数组并将其与命令拼接起来,最后使用`eval`函数来执行完整的命令。具体的代码如下所示:
```shell
#!/bin/sh
args=("ls" "-l" "/home/user")
cmd=""
for arg in "${args[@]}"
do
cmd+=" $arg"
done
eval "$cmd"
```
上述代码首先定义了一个`args`数组,其中包含了需要执行的命令及其参数,然后定义了一个空字符串`cmd`,用于存储拼接后的命令。接下来使用`for`循环遍历整个`args`数组,将每个元素拼接到`cmd`字符串中。最后使用`eval`函数来执行完整的命令行字符串。
需要注意的是,在拼接命令行字符串时,每个参数前都需要添加一个空格,这样才能正确地拼接成完整的命令行字符串。
阅读全文