basicsys@mars~/lec8>cat F1 abcdef 12334ab abcd yyy basicsys@mars~/lec8>cat F2 shalom hi hello yossi rami 1234 basicsys@mars~/lec8>egrep -c ab F1 F2 F1:3 F2:0 basicsys@mars~/lec8>egrep -c -h ab F1 F2 3 0 basicsys@mars~/lec8>egrep ab F1 F2 F1:abcdef F1:12334ab F1:abcd basicsys@mars~/lec8>egrep AB F1 F2 basicsys@mars~/lec8>egrep -i AB F1 F2 F1:abcdef F1:12334ab F1:abcd basicsys@mars~/lec8>egrep -i -l AB F1 F2 F1 basicsys@mars~/lec8>egrep -i "AB|1" F1 F2 F1:abcdef F1:12334ab F1:abcd F2:1234 basicsys@mars~/lec8>egrep -i -l "AB|1" F1 F2 F1 F2 basicsys@mars~/lec8>tree t t |-- d1 | |-- d3 | | |-- a1 | | |-- f2 | | `-- f3 | `-- f4 |-- d2 | `-- d3 | `-- f5 `-- f1 5 directories, 5 files basicsys@mars~/lec8>find t -name f5 -print t/d2/d3/f5 basicsys@mars~/lec8>find t -name f* -print t/d1/f4 t/d1/d3/f2 t/d1/d3/f3 t/f1 t/d2/d3/f5 basicsys@mars~/lec8>find t -name f* -print -print t/d1/f4 t/d1/f4 t/d1/d3/f2 t/d1/d3/f2 t/d1/d3/f3 t/d1/d3/f3 t/f1 t/f1 t/d2/d3/f5 t/d2/d3/f5 basicsys@mars~/lec8>find t -name f* t/d1/f4 t/d1/d3/f2 t/d1/d3/f3 t/f1 t/d2/d3/f5 basicsys@mars~/lec8>ls -l t total 12 drwx------ 3 basicsys basicsys 4096 Dec 24 18:17 d1 drwx------ 3 basicsys basicsys 4096 Dec 17 10:40 d2 -rw------- 1 basicsys basicsys 37 Dec 24 18:19 f1 basicsys@mars~/lec8>find t -size 37c t/f1 basicsys@mars~/lec8>find t -size +37c t t/d1 t/d1/d3 t/d1/d3/f2 t/d1/d3/f3 t/d1/d3/a1 t/d2 t/d2/d3 basicsys@mars~/lec8>find t -size -37c t/d1/f4 t/d2/d3/f5 basicsys@mars~/lec8>ls -l t/d1/f4 -rw------- 1 basicsys basicsys 34 Dec 17 10:40 t/d1/f4 basicsys@mars~/lec8>ls -l t/d2/d3/f5 -rw------- 1 basicsys basicsys 36 Dec 24 18:24 t/d2/d3/f5 basicsys@mars~/lec8/t/d1>ls -l total 8 drwx------ 3 basicsys basicsys 4096 Dec 30 09:16 d3 -rw------- 1 basicsys basicsys 30 Dec 30 09:15 f4 basicsys@mars~/lec8/t/d1>echo abc >> f4 basicsys@mars~/lec8/t/d1>ls -l f4 -rw------- 1 basicsys basicsys 34 Dec 30 11:52 f4 basicsys@mars~/lec8>find t -mmin -2 t/d1/f4 basicsys@mars~/lec8>find t -mmin -1 basicsys@mars~/lec8>cd t/d1 basicsys@mars~/lec8/t/d1>ls -l f4 -rw------- 1 basicsys basicsys 34 Dec 30 11:52 f4 basicsys@mars~/lec8/t/d1>cat f4 I am file f4 indirectory t/d1 abc basicsys@mars~/lec8/t/d1>ls -l f4 -rw------- 1 basicsys basicsys 34 Dec 30 11:52 f4 basicsys@mars~/lec8/t/d1>ls -l --time=atime total 8 drwx------ 3 basicsys basicsys 4096 Dec 30 11:54 d3 -rw------- 1 basicsys basicsys 34 Dec 30 11:55 f4 basicsys@mars~/lec8/t/d1>ls -l --time=ctime total 8 drwx------ 3 basicsys basicsys 4096 Dec 30 09:16 d3 -rw------- 1 basicsys basicsys 34 Dec 30 11:52 f4 basicsys@mars~/lec8/t/d1>ls -l --time=atime total 8 drwx------ 3 basicsys basicsys 4096 Dec 30 11:54 d3 -rw------- 1 basicsys basicsys 34 Dec 30 11:55 f4 basicsys@mars~/lec8/t/d1>ls -l total 8 drwx------ 3 basicsys basicsys 4096 Dec 30 09:16 d3 -rw------- 1 basicsys basicsys 34 Dec 30 11:52 f4 basicsys@mars~/lec8/t/d1>cat f4 I am file f4 indirectory t/d1 abc basicsys@mars~/lec8/t/d1>ls -l --time=atime total 8 drwx------ 3 basicsys basicsys 4096 Dec 30 11:54 d3 -rw------- 1 basicsys basicsys 34 Dec 30 11:59 f4 basicsys@mars~/lec8>find t -amin -2 t/d1 t/d1/f4 basicsys@mars~/lec8>find t -mmin -2 basicsys@mars~/lec8>cd t basicsys@mars~/lec8/t>ls d1 d2 f1 basicsys@mars~/lec8/t>find d1 d1 d1/f4 d1/d3 d1/d3/f2 d1/d3/f3 d1/d3/a1 basicsys@mars~/lec8/t>ls -l --time=atime total 12 drwx------ 3 basicsys basicsys 4096 Dec 30 12:07 d1 drwx------ 3 basicsys basicsys 4096 Dec 30 12:06 d2 -rw------- 1 basicsys basicsys 37 Dec 30 09:14 f1 basicsys@mars~/lec8>find -name a* -o -size 37c ./t/d1/d3/a1 ./t/f1 basicsys@mars~/lec8>find t -name a* -size 37c basicsys@mars~/lec8>find t \( -name a* -o -size 37c \) -mmin -100 basicsys@mars~/lec8>find t \( -name a* -o -size 37c \) -mmin +100 t/d1/d3/a1 t/f1 basicsys@mars~/lec8>find t -exec echo hi \; hi hi hi hi hi hi hi hi hi hi hi basicsys@mars~/lec8>find t -name f* -exec echo hi \; -print hi t/d1/f4 hi t/d1/d3/f2 hi t/d1/d3/f3 hi t/f1 hi t/d2/d3/f5 basicsys@mars~/lec8>find t -name f* -exec echo -n hi \; -print hit/d1/f4 hit/d1/d3/f2 hit/d1/d3/f3 hit/f1 hit/d2/d3/f5 basicsys@mars~/lec8>find t -name f* -exec echo -n "hi " \; -print0 -exec echo " bye" \; hi t/d1/f4 bye hi t/d1/d3/f2 bye hi t/d1/d3/f3 bye hi t/f1 bye hi t/d2/d3/f5 bye basicsys@mars~/lec8>find t -name f* -print -exec head -1 {} \; t/d1/f4 I am file f4 indirectory t/d1 t/d1/d3/f2 I am file f2 at directory t/d1/d3 t/d1/d3/f3 I am file f3 at directory t/d1/d3 t/f1 I am file f1 inside directory t t/d2/d3/f5 I am file f5 in directory t/d2/d3 basicsys@mars~/lec8>P1 t/f1 yyyy basicsys@mars~/lec8>cat P1 #!/bin/bash head -2 $1 | tail -1 basicsys@mars~/lec8>find t -name f* -print -exec P1 {} \; t/d1/f4 abc t/d1/d3/f2 5ab t/d1/d3/f3 dd t/f1 yyyy t/d2/d3/f5 I am file f5 in directory t/d2/d3 basicsys@mars~/lec8>cat finder #!/bin/bash find $1 -type f -exec egrep -l $2 {} \; basicsys@mars~/lec8>finder t ab t/d1/f4 t/d1/d3/f2 t/d1/d3/f3 basicsys@mars~/lec8>finder t yyy t/f1 basicsys@mars~/lec8>cat get_file_name #!/bin/bash echo $1 | tr "/" "\n" | tail -1 basicsys@mars~/lec8>get_file_name a/ab/f1 f1 basicsys@mars~/lec8>cat rem_dup #!/bin/bash find $1 -type f -exec get_file_name {} \; >|tmp basicsys@mars~/lec8>rem_dup t basicsys@mars~/lec8>cat tmp f4 f2 f3 f1 f5