1

配列の内容とファイルの内容を比較したいと思います。最善の解決策は次のとおりだと思います。

b=( some data )
a=$(<file)
if [ $a -ne ${b[@]} ]
then
    echo "variables are different"
fi

私は正しいですか?

4

2 に答える 2

2

これを試して :

$ cat file
a
b
c
$ echo -n "arrays are "
$ x1=( a b c )
$ mapfile -t x2 < file
$ [[ ${x1[@]} == ${x2[@]} ]] && echo "identical" || echo >&2 "different"
于 2012-11-16T13:23:55.513 に答える
-1

Bash のプロセス置換を使用すると、次のようになります。

b=( some data )
if ! diff <(echo ${b[*]}) file; then
  echo "different"
fi
于 2012-11-16T20:11:02.920 に答える