在bash中,我需要将给定目录的所有文件名放入一个数组中.此外,我需要每个文件是数组中的一个元素,这样,如果我的目录包含3个文件:file1.txt,file2.txt和file3.txt我的数组看起来像这样.
echo $arr
{file1.txt, file2.txt, file3.txt}
Run Code Online (Sandbox Code Playgroud)
使用创建数组变量var=(...).当前目录中所有文件的glob是*.一起:
files=(*)
echo "${files[@]}"
Run Code Online (Sandbox Code Playgroud)
你可以遍历数组:
for file in "${files[@]}"; do
echo "$file"
done
Run Code Online (Sandbox Code Playgroud)
或访问个别元素:
echo "${files[0]}"
echo "${files[1]}"
echo "${files[2]}"
Run Code Online (Sandbox Code Playgroud)
请注意明智地使用双引号.这些确保正确处理具有空格和其他特殊字符的文件.