1
if [ cmp -s "$expectedOut" "$actualOut" ]; then
次のコード行では、引数が多すぎるというエラーが表示され続けます。しかし、私はこれがcmpの適切な典型的な使用であることを知っているので、括弧で括らなければならないかもしれないと思います。誰でも本当にここで何が起こっているのか知っていますか?cmp in if文(Bash)
if [ cmp -s "$expectedOut" "$actualOut" ]; then
次のコード行では、引数が多すぎるというエラーが表示され続けます。しかし、私はこれがcmpの適切な典型的な使用であることを知っているので、括弧で括らなければならないかもしれないと思います。誰でも本当にここで何が起こっているのか知っていますか?cmp in if文(Bash)
[
]
が失われます。
if cmp -s "$expectedOut" "$actualOut" ; then
if
の構文は
if Command; then
[
である(その上で、物事はかなり見えるようにする最後の引数として]
を期待して起こる)ただ一つの可能なコマンドです。
'['は 'if'構文の一部ではありません - 独自の構文を持つ別のコマンドです。 'cmp'を実行したい場合、' [''ではなく 'cmp'を実行してください。 –