From owner-freebsd-hackers Sat Apr 26 22:32:57 1997 Return-Path: Received: (from root@localhost) by hub.freebsd.org (8.8.5/8.8.5) id WAA29018 for hackers-outgoing; Sat, 26 Apr 1997 22:32:57 -0700 (PDT) Received: from relay-7.mail.demon.net (relay-7.mail.demon.net [194.217.242.9]) by hub.freebsd.org (8.8.5/8.8.5) with SMTP id WAA29011 for ; Sat, 26 Apr 1997 22:32:53 -0700 (PDT) Received: from erlenstar.demon.co.uk ([194.222.144.22]) by relay-5.mail.demon.net id ab0514074; 27 Apr 97 6:12 BST Received: (from andrew@localhost) by erlenstar.demon.co.uk (8.8.5/8.8.5) id GAA14814; Sun, 27 Apr 1997 06:12:36 +0100 (BST) To: Curt Sampson Cc: hackers@freebsd.org Subject: Re: /etc/netstart bogons.. References: From: Andrew Gierth In-Reply-To: Curt Sampson's message of Sat, 26 Apr 1997 21:47:32 -0700 (PDT) X-Mayan-Date: Long count = 12.19.4.2.1; tzolkin = 5 Imix; haab = 19 Pop X-Attribution: AG Date: 27 Apr 1997 06:12:36 +0100 Message-ID: <874tctkq0r.fsf@erlenstar.demon.co.uk> Lines: 28 X-Mailer: Gnus v5.3/Emacs 19.34 Sender: owner-hackers@freebsd.org X-Loop: FreeBSD.org Precedence: bulk >>>>> "Curt" == Curt Sampson writes: >> Can't let this slip past: "" and unset are certainly not the same in sh. Curt> So how do we test for the difference between the two? $ sh $ if [ -z "${var+X}" ]; then echo "variable 'var' is not set"; fi variable 'var' is not set $ var='' $ if [ -z "${var+X}" ]; then echo "variable 'var' is not set"; fi $ Or, if you want "unset" to be treated like "NO", then $ unset var $ echo "value is '${var-NO}'" value is 'NO' $ var='' $ echo "value is '${var-NO}'" value is '' $ var='foo' $ echo "value is '${var-NO}'" value is 'foo' $ -- Andrew.