From mboxrd@z Thu Jan 1 00:00:00 1970 From: random832@fastmail.com (Random832) Date: Thu, 14 Jul 2016 22:25:31 -0400 Subject: [TUHS] Shell control through external commands In-Reply-To: References: <4fcf31ef-50af-10b5-0c34-ad647ed10a4e@aueb.gr> <20160714224939.GA35271@server.rulingia.com> Message-ID: <1468549531.1418457.666827937.6487308D@webmail.messagingengine.com> On Thu, Jul 14, 2016, at 19:56, shawn wilson wrote: > I've always been curious though - what was the reason behind > implementing /bin/[ ? IDK any shell where this isn't implemented - I > always assumed it's a POSIX compatibility stopgap older systems needed > to stay compliant with their shipped shell. It's required because it might be executed by non-shell programs. http://pubs.opengroup.org/onlinepubs/9699919799/utilities/V3_chap01.html#tag_17_06 My Mac even has /usr/bin/cd. The "special builtins" which aren't required to exist as binaries are: break : continue . eval exec exit export readonly return set shift times trap unset