将grep命令的结果作为独立的条目添加到数组或列表中。
代码示例:
#!/bin/bash
# 创建一个空数组
results=()
# 搜索包含"hello"的文件并将结果添加到数组中
while read -r line; do
results+=("$line")
done < <(grep -l "hello" *)
# 打印数组的内容,每个条目占一行
printf '%s\n' "${results[@]}"
解释:
results=()
:创建一个空数组。
while read -r line; do results+=("$line"); done
:使用while循环来读取grep命令的结果,并将每个结果作为一个独立的条目添加到数组中。
< <(grep -l "hello" *)
:使用grep命令搜索当前目录下包含"hello"的所有文件,并将结果传递给while循环。
printf '%s\n' "${results[@]}"
:使用printf命令打印数组的内容,每个条目占一行。