目的是[ x"$1" != x"" ]
什么?
查看 xdg-screensaver,运行的第一个命令:
[ x"$1" != x"" ] || exit_failure_syntax
shebang 是#!/bin/sh
(这对我来说是破折号)。
我在其他旧的 shell 脚本中发现了类似的语法……这样做的目的是什么?
我想有一个旧习惯使用|| 而不是 && 退出...也许与set -e
. 但是为什么不直接使用类似[ -n "$1" ] || exit_failure_syntax
, -z
, $# -ne 0
, 等等...
正如我所提到的,我以前见过这种奇怪的x"$var" = x""
东西。为什么会有人这样做?