05.08.2013 Views

Module 13: Shell Scripts in UNIX - E-Courses

Module 13: Shell Scripts in UNIX - E-Courses

Module 13: Shell Scripts in UNIX - E-Courses

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

Operat<strong>in</strong>g Systems Prof. P. C. P. Bhat<br />

Indian Institute of Science Bangalore<br />

Operat<strong>in</strong>g Systems/<strong>Shell</strong> <strong>Scripts</strong> <strong>in</strong> <strong>UNIX</strong> Lecture Notes<br />

Table <strong>13</strong>.4: A list of test options.<br />

# dummy <strong>in</strong> the current directory as a first step.<br />

#echo remov<strong>in</strong>g dummy<br />

rm dummy<br />

for i <strong>in</strong> `ls`; do echo $i >> dummy; done<br />

grep test dummy<br />

File tests may be much more complex compared to the ones shown <strong>in</strong> the previous<br />

example. There we checked for only the existence of the file. In Table <strong>13</strong>.4 we show<br />

some test options.<br />

In the context of use of test, one may perform tests on str<strong>in</strong>gs as well. The table below<br />

lists some of the possibilities.<br />

Test Operation Returned value<br />

------------ -------------str1<br />

= str2 True when strs are equivalent<br />

str != str2 True when not equivalent<br />

-1 str True when str has length 0<br />

-n str True when str has nonzero length<br />

str<strong>in</strong>g True when NOT the null str<strong>in</strong>g.<br />

In addition to for there are while and until iterators which also have their do and done.<br />

These two patterns are shown next.<br />

while condition<br />

do<br />

command_set<br />

PCP Bhatt/IISc, Bangalore M<strong>13</strong>/V1/June 04/12

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!