【发布时间】:2020-03-11 18:59:38
【问题描述】:
在 bash 数组中使用以下命令时,会丢失数组元素的行分隔。
array=$(find "${PWD%/*}" -name '*.dmg')
如果我重定向 find 命令的路径,而不是将其存储在变量中,而是将其存储到文本文件中,它会给出所需的结果。
find "${PWD%/*}" -name '*.dmg' > Out.txt
但我想将结果用作 Bash 中的变量并循环遍历它。
在这种情况下,find 命令应该返回一个数组,其中包含一个目录中所有 .dmg 文件的路径。我想用hdiutil mount 命令循环遍历这个数组,以便挂载目录中的所有.dmg 文件。
【问题讨论】:
-
下次请格式化代码,这次我做了修改。
-
谢谢你。这是我在堆栈溢出中的第二篇文章,我仍在学习如何在这里进行交互。但感谢您的改进。
-
没问题AFouquet,欢迎!
-
您根本没有定义数组;您只是将
find的输出捕获为单个字符串。 -
另外,您假设(也许有充分的理由)文件名本身不包含换行符。