Linux   发布时间:2022-04-01  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了linux – Bash for循环数组,文件来自(*)只显示第一个元素大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
@H_674_1@

概述

我想将当前目录的文件放在一个数组中,并用这个脚本回显每个文件: #!/bin/bash files=(*) for file in $files do echo $file done # This demonstrates that the array in fact has the values from (*) echo ${files[0]} ${files[1]} ec
我想将当前目录的文件放在一个数组中,并用这个脚本回显每个文件
#!/bin/bash

files=(*)

for file in $files
do
    echo $file
done

# This demonstrates that the array in fact has the values from (*)
echo ${files[0]}  ${files[1]} 

echo done

输出

echo.sh
echo.sh read_output.sh
done

有谁知道为什么只有第一个元素在for循环中打印?

解决方法

$files扩展到数组的第一个元素.
尝试echo $files,它只会打印数组的第一个元素.
由于同样的原因,for循环只打印一个元素.

要扩展到数组的所有元素,您需要将其写为${files [@]}.

迭代Bash数组元素的正确方法

for file in "${files[@]}"

大佬总结

以上是大佬教程为你收集整理的linux – Bash for循环数组,文件来自(*)只显示第一个元素全部内容,希望文章能够帮你解决linux – Bash for循环数组,文件来自(*)只显示第一个元素所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。