Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
在 bash 中,你可以做
MYVAR="somevalue" ./myscript.sh
并且变量 MYVAR 将在运行 myscript.sh 时定义。
我的问题是:我可以对数组做同样的事情吗?不幸的是,以下都不起作用。
MYARR=( 1 2 ) ./myscript.sh MYARR[0]=1 MYARR[1]=2 ./myscript.sh declare -a MYARR=( 1 2 ) ./myscript.sh
难以置信的奇怪....我以前从未见过。
看起来数组没有传递给子shell。解决此问题的一种方法是获取脚本而不是执行它:
declare -a MYARR=( 1 2 ); . ./myscript.sh