インストールする必要がないので、Windows側にwin-bashを使用して、MacとWindowsの両方で実行されるbashスクリプトを作成しようとしています。ただし、MacとWindowsでは構文について異なる意見があるようです。
たとえば、これまでに次のスクリプトがあります。
echo "Setup..."
shopt -s expand_aliases #make sure aliases work
if [ "$(uname)" == "Darwin" ]; then
alias p4cli=./bin/p4
else
alias p4cli=p4
fi
echo "Checking login status..."
p4cli groups > .trash
if [ $? -ne 0 ]; then
p4cli login
fi
echo "Done!"
これは次の場合に失敗します。
[: ==: binary operator expected
Windows(win-bash)では動作しますが、Macでは問題なく動作します(実際にはUnixであるため、これがより正しいと思います)。
私がここで間違っていることについて何か考えはありますか?