diff -q を使用する If 文と else 文

diff -q を使用する If 文と else 文

だから私はを使用するif elseステートメントを作成しようとしています。 2つのファイルがあり、それをhiとhelloという変数に保存するとしますdiff -q。このコードがありますhi.txthello.txt

if [ diff -q $hi $hello ]; then
  echo "these files are the same"
else 
  echo "these files are not the same"
fi

含まれている内容が何であれhi.txthello.txt内容がまったく同じであっても同じです。エラーメッセージが表示されます。

./(name of script) line (line with [diff -q hi hello]) [: too many arguments. 

私の文法のどの部分が間違っていますか?

答え1

  1. 括弧内にdiffを入れていません。
  2. 変数を使用する構文は次のとおりです。$hi

したがって、生成されたスクリプトは次のようになります。

if diff -q $hi $hello; then
echo "these files are the same"
else
echo "these files are not the same"
fi

関連情報