0

の目的は[ x"$1" != x"" ]何ですか?

xdg-screensaver を見ると、最初に実行されるコマンドは次のとおりです。

[ x"$1" != x"" ] || exit_failure_syntax

シバンは#!/bin/sh(私にとってはダッシュです)です。

他の古いシェル スクリプトで同様の構文を見つけました...これの目的は何ですか?

|| 使用する古い習慣があると思います || && ではなく終了します...おそらくset -e. しかし、、、、など[ -n "$1" ] || exit_failure_syntaxを使用しないのはなぜですか...-z$# -ne 0

私が言ったように、私はx"$var" = x""以前にこの奇妙なものを見たことがあります。なぜ誰かがこれをするのでしょうか?

4

1 に答える 1

1

空の文字列を比較できない `[` はどれですか?

変数が空か存在しないかをテストするのは昔ながらの方法です。

于 2016-02-17T10:53:50.177 に答える