我在这里搜索过类似的问题,但令人惊讶的是找不到任何问题.
在GNU bash中,有一个名为" arrays "的(一个构造?一个结构?一个数据类型?).数组在bash文档中有详细记录,所以我认为我理解了基础知识.
但突然间,在文档中也出现了"列表"一词.例如,在讨论文件名扩展时使用它(强调是我的):
如果出现其中一个字符,则该单词被视为模式,并替换为与该模式匹配的按字母顺序排列的文件名列表(请参阅模式匹配).
因此,我有三个问题:
IFS,或者与数组相同?还有另一种使用"名单"一词在谈论一个或多个管道的序列时,但我知道,很可能意味着不同类型的列表.
当"列表"优于数组时,有哪些用例?例如,让我们进行比较.让我们创建两个文件:
$ touch file1.txt file2.txt
说到列表,我可以执行以下操作:
$ A=*.txt ; echo $A
file1.txt file2.txt
$
Run Code Online (Sandbox Code Playgroud)
当涉及到数组时,我可以执行以下操作:
$ B=(*.txt) ; echo ${B[@]}
file1.txt file2.txt
$
Run Code Online (Sandbox Code Playgroud)
虽然这两个结果完全相同,但是当数组和列表返回不同的结果时是否存在任何情况?
我可能会混淆一些东西,因为在上面的例子中,它似乎是一个"包裹"在数组中的列表.我不知道它是否有所作为.