Path: utzoo!utgpu!news-server.csri.toronto.edu!cs.utexas.edu!samsung!zaphod.mps.ohio-state.edu!usc!rutgers!mcnc!xanth!xanth.cs.odu.edu!scott From: scott@cs.odu.edu (Scott Yelich) Newsgroups: comp.unix.questions Subject: General, /bin/sh, IO, etc... Message-ID: Date: 5 Jun 90 17:34:13 GMT Sender: news@cs.odu.edu Distribution: comp Organization: Old Dominion University, Norfolk, VA Lines: 74 I have a couple of questions that I am working on... and I wouldn't mind some additional EMAIL input just to help me sort out the answers. [ I am using either a sun 3/60 or a sparcstation and sunos 4.0.3... ] 1) Why does IFS affect the commands in a shell, not just the text? %sh { IFS="$IFS-" tail -f /usr/spool/mail/$USER } tail: f: No such file or directory If I do: %sh { IFS="$IFS-" set "H-H" echo $# VAR=$@ } set $VAR echo $# I get ``1'' then ``2'' so the ``-'' is in there... at one point. Do the braces { } create a sub shell (yic!)? What about functions? %sh PR=$$ SUB () { SUBPR=$$ { SUBSUBPR=$$ } } SUB echo $PR $SUBPR $SUBSUBPR I get the same number... but the process table shows ``cat'' by a different process number and it diagrams it as if it were a sub/child process! The environments are different with some commands! Like ``for''... 2) What is the bufferring done here? %tail -f file | tr "Aa" Works... %tail -f file | tr "Aa" |\ while read LINE do echo $LINE done Doesn't work. Is there anyway to get ``tr'' to pass stuff through in this type of a situation? % tail -f file | tr -d "chars"| loop What I want to do is trap the ``tr'' in a pipe sequence so I don't keep calling it. I could also just use IFS="all_chars_that_I_want_to_delete" ... but I would much rather get the `tr' working since one of the characters I want to delete is a ``-''. Hmmm.... that's enough for now. ----------------------------------------------------------------------------- Scott D. Yelich scott@[xanth.]cs.odu.edu [128.82.8.1] After he pushed me off the cliff, he asked me, as I fell, ``Why'd you jump?'' Administrator of: Game design requests to -----------------------------------------------------------------------------