我是bash的新手。你能不能解释一下导师的这段代码之间的区别:
newarray=(`echo "$@"`)
和我的线
newarray=$@
我将不胜感激
你不应该使用任何一个。如果你想要另一个由位置参数组成的数组,你应该使用
newarray=( "$@" )
要了解原因,您需要了解
$@
做什么,以及引用时的行为。- 什么是单词拆分,以及何时应用。
- 什么是路径名扩展,以及它如何导致第一个是一个坏主意。
- 引用的工作原理,因此您知道什么(或很少(不需要引用。
以上所有内容都太宽泛了,无法进入;我建议阅读(而不仅仅是略读(bash
手册页。作为教程,它不是很好,但您需要的所有信息都在那里。