140 likes | 161 Views
Integer variables. #!/bin/csh # sum of numbers from $argv[1] to $argv[2] set low = $argv[1] set high = $argv[2] set sum = 0 set current = $low while ( $current <= $high) @ sum += $current @ current++ end echo The sum of the numbers from $low to $high is $sum.
E N D
Integer variables #!/bin/csh # sum of numbers from $argv[1] to $argv[2] set low = $argv[1] set high = $argv[2] set sum = 0 set current = $low while ( $current <= $high) @ sum += $current @ current++ end echo The sum of the numbers from $low to $high is $sum.
Searching the File Tree: Find Command General form find filename…expression… find ~ -name \*.awk –print Searches the subtree rooted at home directory visiting each file and printing each file that ends in .awk
Some important primary expressions • -atime n • -name filename • -exec cmd (end of command must be punctuated by a space then \;) • -newer file • -print (see pages 149-151 of text for more details)
The different shells Name # of internal Size of Complexity of shell commands man pages sh 32 44,000 1.0 csh 52 77,000 1.73 bash 50 127,000 2.86 zsh 73 133,000 3.00 ksh 43 141,000 3.18 tcsh 56 199,800 4.99
The if Statement – Bourne Shell if [ condition ] then commands else commands fi
Test condition operators – Bourne shell String = string String != string Value –eq value Value –ne value Value –gt value Value –ge value Value –lt value Value –le value
Referencing arguments – Bourne shell $0, $1, $2, … (same as csh) $* (list of all the variable) $# (number of variables)
Bourne shell script #!/bin/sh # lookup a person's phone number in the phone book if [ $# -ne 1 ] then echo "\nusage:$0 name\n" else grep "$1" phone_book fi
The while Statement – Bourne Shell while [ condition ] do commands done
Infinite Loop while true while :
The for Statement – Bourne Shell for variable in list do commands done
#!/bin/sh for index in 1 2 3 4 5 do echo $index done
Clean - Bourne Shell http://www.ececs.uc.edu/~berman/620/cleanbourne
File Types • Ordinary file – contains text, programs, or other data • Directory – contains names and addresses of other files • Special file – represents an I/O device • Link – pointer to another file • Socket – used for interprocess communication