-bash: 予期しない表示 ";"近くに構文エラーがあります。

-bash: 予期しない表示

では、正しい形式は何ですか?
私は多くの種類を試してみました。
この形式はプログラムではなくコマンドラインでも機能する必要がありますか?

$ if [1==2] then echo "y" fi;
> ;
-bash: syntax error near unexpected token `;'

ベストアンサー1

まだ誰もこのエラーを説明していません。

あなたはログインしています:

if [1==2] then echo "y" fi;
;

最初の行は、シェルに関する限り、完全に有効な構文です。その形式は次のとおりです。

if cmd args

この場合はglobcmdの拡張です[1==2][1==2]名前または文字で構成されている現在のディレクトリのファイルのリストに展開されるワイルドカードパターン。1=2

たとえば、2現在のディレクトリにファイルがある場合は、次のようになります。

2の場合、fiを返します。

つまり、ステートメントセクションの最初のコマンドとして、およびの42つのパラメータを使用してコマンドを実行します。2thenechofiifif/then/elif/else/fi

エラーは;2行目で発生します。;コマンドラインにこのエラーメッセージを個別に入力すると、同じエラーメッセージが表示されます。;コマンドを分離して使用する必要があり、このように単独で使用することはできません。

おすすめ記事