请输入关键字进行搜索
查看更多 "" 的搜索结果
我在写 Bash 脚本时,想把一组路径、参数或文件名直接通过环境变量传给子进程,但一旦有空格、引号或者多个元素,读取结果就开始乱掉,所以我想知道为什么环境变量不能像数组一样稳定保存一组值。
查看全部 1 个回答
不会,因为 Bash 环境变量本质上是 `name=value` 字符串,不是数组对象。你可以把 `PATH` 这类值拼成一个字符串传出去,但数组里的元素边界、空值和下标信息不会自动保留。换句话说,环境变量适合“传一个值”,数组适合“留住多个值的结构” [1][2]。
如果你的目的是让子进程看到一组参数,建议把它序列化成明确的文本格式,或者直接写到文件里再读取;如果只是脚本内部循环处理,继续用 Bash 数组最稳。这样做不是为了讲究,而是为了避免空格、引号、通配符把数据拆坏。
哇
你的浏览器版本过低,可能导致网站部分内容不能正常使用!
为了能正常使用网站功能,请使用以下浏览器
0 评论