Return to BSD News archive
Received: by minnie.vk1xwt.ampr.org with NNTP id AA6846 ; Fri, 15 Jan 93 10:37:04 EST Path: sserve!manuel.anu.edu.au!munnari.oz.au!uunet!mcsun!uknet!cf-cm!myrddin.isl.cf.ac.uk!paul From: paul@isl.cf.ac.uk (Paul) Newsgroups: comp.unix.bsd Subject: Differences with here documents Message-ID: <1993Jan15.230023.5307@cm.cf.ac.uk> Date: 15 Jan 93 23:00:21 GMT Sender: news@cm.cf.ac.uk (Network News System) Organization: Intelligent Systems Lab, ELSYM, Universiity of Wales, College of Cardiff. Lines: 37 I came across some problems with a script that worked on ultrix but not 386bsd, it came down to differences in command expansion in here documents. The test prog I used was cat <<EOF $(CHNFILES) EOF which on 386bsd would give the following error. CHNFILES: command not found After reading the manual page for ash and bash it seems this is what I should expect since substituion occurs unless the word (EOF) is quoted. Ok, so I read the manual page on ultrix and it said the same thing, yet substitution does not take place on ultrix. Since I didn't want substitution I quoted EOF i.e. cat <<\EOF $(CHNFILES) EOF and this did what I wanted. Does this mean that there's a bug with the ultrix shell (also SUNOS behaves in the same way). The original script came as part of a package which is meant to install on a variety of platforms so it therefore assumes that the above redirection is actually incorrect on most platforms. What is correct POSIX behaviour? -- Paul Richards, University of Wales, College Cardiff JANET:paul@uk.ac.cf.isl Internet:paul@isl.cf.ac.uk UUCP: paul@cf-isl.UUCP or ...!uunet!mcsun!uknet!cf!isl!paul