LINUX.ORG.RU

История изменений

Исправление vodz, (текущая версия) :

Здесь это не нужно

Немного не так. Это ТЕПЕРЬ не нужно. Но исторически такого специального хака: если три аргумента и второй = и !=, то не интерпретировать первый аргумент появилось исторически недавно и всё таки противоречиво.

$ var="!"
$ [ "$var" = "!" ]
test: argument expected            (UNIX v7, 1979)
test: =: unary operator expected   (bash 1.14, 1996)
(false)                            (pd-ksh88, 1988)
$ [ "x$var" = "x!" ]
(true)

Исходная версия vodz, :

Здесь это не нужно

Немного не так. Это ТЕПЕРЬ не нужно. Но исторически такого специального хака: если три аргумента и второй = и !=, то не интерпретировать первый аргумент появилось исторически недавно и всё таки противоречиво.

$ var="!"
$ [ "$var" = "!" ]
test: argument expected            (UNIX v7, 1979)
test: =: unary operator expected   (bash 1.14, 1996)
(false)                            (pd-ksh88, 1988)
$ [ "x$var" = "x!" ]
(true)
[/bash]