レビュー中に、echoを使用して変数を自分自身に再割り当てするいくつかのbashコードを見つけました。変数は配列です。このコードはデフォルトで変数を自分に割り当てます`echo $a`
。
a=(one two three)
a=`echo $a`
これの目的は何ですか?
答え1
配列の最初の要素を切り捨てます。
a=( ' one ' two three )
a=$(echo $a)
echo "<$a>"
出力:
<one>
さまざまな参照の組み合わせを使用できます。
#! /bin/bash
for i in {1..4} ; do
a=( $' one \n * two ' three four )
case $i in
(1) a=$(echo $a) ;;
(2) a=$(echo "$a") ;;
(3) a="$(echo $a)" ;;
(4) a="$(echo "$a")" ;;
esac
echo "<$a>"
done
しかし基本的には
a[0]=...
配列の最初の要素を割り当てたい場合
echo "${a[0]}"
最初の要素を出力したい場合。