では、正しい形式は何ですか?
私は多くの種類を試してみました。
この形式はプログラムではなくコマンドラインでも機能する必要がありますか?
$ 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
つのパラメータを使用してコマンドを実行します。2
then
echo
fi
if
if/then/elif/else/fi
エラーは;
2行目で発生します。;
コマンドラインにこのエラーメッセージを個別に入力すると、同じエラーメッセージが表示されます。;
コマンドを分離して使用する必要があり、このように単独で使用することはできません。