Lecture 3
Tonight we dine in shell
Lecture 3
Tonight we dine in shell
Hands-On Unix System Administration DeCal 2012-09-17
Tonight we dine in shell Tonight we dine in shell Hands-On Unix - - PowerPoint PPT Presentation
Lecture 3 Lecture 3 Tonight we dine in shell Tonight we dine in shell Hands-On Unix System Administration DeCal 2012-09-17 Review $ 1 , $ 2 , . . . ; $ @ , $ * , $ # , $ 0 , $ ? e n v i r o n m e n t v
Lecture 3
Lecture 3
Hands-On Unix System Administration DeCal 2012-09-17
$ f i n d a b
y p e f !
a m e ' c r a z y '
r i n t f ' % f \ n ' $ f i n d /
e w e r t t t
s e r w n j
r i n t $ f i n d
/ u s r / p
t s / p a c k a g e s
y p e l
x e c r m
} +
t u s e d a f t e r a f i n d :
u s e d w i t h f i n d t
r i n t N U L c h a r a c t e r g e n e r a l l y f
x a r g s
u s e d i n x a r g s i n c
j u n c t i
w i t h
r i n t f
` f i n d ' f
f i l e s w i t h s p a c e s
$ f i n d .
a m e ' r a n d
c r a p f i l e ' | x a r g s r m $ f i n d .
a m e ' f i l e t
e m
e d ' | x a r g s
{ } m v { } s
e f
d e r
$ f
{ s
e t h i n g } ; d
e c
m a n d ; s
e
h e r c
m a n d ; d
e f
{ s
e t h i n g } d
e c
m a n d s
e
h e r c
m a n d d
e
$ w h i l e { s
e e x p r e s s i
} ; d
e c
m a n d ; s
e
h e r c
m a n d ; d
e w h i l e { s
e t h i n g } d
e c
m a n d s
e
h e r c
m a n d d
e
– N
t r [ O P T I O N ] . . . S E T 1 [ S E T 2 ]
– R
t r [ O P T I O N ] . . . S E T 1 [ S E T 2 ] $ e c h
t h e q u i c k b r
n f
” | t r a b c d e f $ e c h
t h e q u i c k b r
n f
” | t r a
A
,
i c t i
a r y
d e r
s i d e r b l a n k s a n d a l p h a n u m e r i c c h a r a c t e r s
,
u m e r i c
t
S
t b y n u m e r i c a l v a l u e
,
e v e r s e
R e v e r s e t h e r e s u l t
c
p a r i s
s
,
g n
e
a s e
( c
u m n ) ,
k 2 m e a n s s
t c
u m n 2 n u m e r i c a l l y
s
t [ O P T I O N ] . . . [ F I L E ] . . .
c u t [ O P T I O N ] . . . [ F I L E ] . . .
i e w f i r s t / l a s t p a r t s
f i l e
s e f u l f
v i e w i n g l
s
e f a u l t : v i e w f i r s t / l a s t 1 l i n e s
m
t i
s
– -
n ,
i n e s = N
u t p u t f i r s t / l a s t N l i n e s ,
a i l
< f i l e >
– “
f
l
” t h e f i l e ,
t p u t a p p e n d e d d a t a a s < f i l e > g r
s
a i l
+ N < f i l e >
t a i l
i n e s = + N < f i l e >
– S
t a r t i n g f r
N ,
t p u t N t
e s t
f i l e
e a d
i n e s =
< f i l e >
– V
i e w e v e r y t h i n g b u t t h e l a s t N l i n e s i n < f i l e >
t r i n g m a t c h i n g
e t
m e t a c h a r a c t e r s l e t y
s e a r c h f
t e x t t h a t f i t s c r i t e r i a
e x t e d i t
s , u t i l i t i e s , p r
r a m m i n g l a n g u a g e s
g
r e p , s e d , a w k , v i ( m )
P
e r l , R u b y , e t c .
a n y f l a v
s , P O S I X B R E
e g e x g l
s / w i l d c a r d s ≠
i f f e r e n t s e t s
m e t a c h a r a c t e r s u s e d f
d i f f e r e n t p u r p
e s
i l e n a m e e x p a n s i
v s . s t r i n g m a t c h i n g
h e s h e l l i t s e l f d
s n
r e c
n i z e R E ' s . I t i s t h e c
m a n d s a n d u t i l i t i e s , t h a t d
\ ( b a c k s l a s h ) t u r n
f s p e c i a l m e a n i n g
f
l
i n g c h a r a c t e r ( e s c a p i n g ) . ( p e r i
) m a t c h a n y s i n g l e c h a r a c t e r [ . . ] ( b r a c k e t e x p r e s s i
)
– M
a t c h e s O N E
a n y
t h e e n c l
e d c h a r a c t e r s
– H
y p h e n s i n d i c a t e a r a n g e
c h a r a c t e r s ( a
, A
,
)
* ( a q u a n t i f i e r ) m a t c h a n y n u m b e r
n
e
p r e c e d i n g c h a r a c t e r
– e
. g , a * m a t c h e s ' a b c ' , ' b c '
– a
a * m a t c h e s ' a b c ' b u t n
' b c '
s t
| t
s t
, a n y w h e r e ^ t
s t
| t
s t
, b e g i n n i n g
l i n e t
s t
$ | t
s t
, e n d
l i n e ^ t
s t
$ | a l i n e c
t a i n i n g e x a c t l y ' t
s t
' a n d n
h i n g e l s e [ T t ]
s t
| E i t h e r T
s t
t
s t
t
. t
| t
, f
l
e d b y a n y c h a r a c t e r , f
l
e d b y t
T
. * t
| t
, a n y s e q u e n c e
m
e c h a r a c t e r s , f
l
e d b y t
a t c h t e x t ( P A T T E R N c a n b e w /
w /
e g e x )
r e p ( B R E ) , e g r e p / g r e p
( E R E ) , f g r e p / g r e p
( m a t c h f i x e d s t r i n g s )
a n s e a r c h w i t h f i x e d s t r i n g s ,
w i t h r e g e x e s
m
t i
s
c a s e i n s e n s i t i v e s e a r c h
l i s t n a m e s
f i l e s i n s t e a d
p r i n t i n g t h e a c t u a l m a t c h i n g l i n e s
p r i n t l i n e s t h a t D O N ' T m a t c h t h e p a t t e r n
< p a t t e r n >
s e m u l t i p l e
t i
s t
e a r c h w i t h m u l t i p l e p a t t e r n s
g r e p [ O P T I O N S ] P A T T E R N [ F I L E . . . ]
t r e a m e d i t
f
f i l t e r i n g a n d t r a n s f
m i n g t e x t
a n i n p u t s t r e a m ( f i l e
i n p u t f r
p i p e l i n e )
m
l y u s e d t
e r f
m t e x t s u b s t i t u t i
i n a p i p e l i n e
C O M M A N D ' i s
t e n s u b s t i t u t i n g , a p p e n d i n g , i n s e r t i n g , d e l e t i n g t e x t S U B S T I T U T I O N : '
d v a l u e ' c a n b e a r e g e x s e d [ O P T I O N S ] ' C O M M A N D ' [ F I L E . . . ] s e d [ O P T I O N S ] ' C O M M A N D ' [ F I L E . . . ] s e d [ O P T I O N S ] ' C O M M A N D ' [ F I L E . . . ] s e d ' s /
d v a l u e / n e w v a l u e / ( f l a g s ) ' < f i l e >
m
f l a g s
– n
r e p l a c e n t h i n s t a n c e
p a t t e r n w i t h – r e p l a c e m e n t
– g
r e p l a c e A L L i n s t a n c e s
p a t t e r n w i t h – r e p l a c e m e n t
– W
i t h
t f l a g s , s e d r e p l a c e s f i r s t i n s t a n c e
'
d v a l u e ' w i t h ' n e w v a l u e ' i n e a c h l i n e s e d [ O P T I O N S ] ' C O M M A N D ' [ F I L E . . . ] s e d [ O P T I O N S ] ' C O M M A N D ' [ F I L E . . . ] s e d ' s /
d v a l u e / n e w v a l u e / ( f l a g s ) ' < f i l e > $ e c h
I h a t e t h i s d e c a l ” | s e d ' s / h a t e / l
e / ' $ e c h
I h a t e t h i s d e c a l ” | s e d ' s / h a t e / l
e / ' $ e c h
h i h i h i ” | s e d ' s / h i / b y e / '
w h a t t
i n d } c a n b e :
– R
a n g e
l i n e s : s e d ' 1 , 3 d ' < m y f i l e . t x t >
– R
e g e x : s e d ' / # / d ' ( d e l e t e c
m e n t s m a y b e ? ) O t h e r s e d c
m a n d s i n c l u d e i n s e r t i
( i ) a n d a p p e n d i n g t e x t ( a ) s e d [ O P T I O N S ] ' C O M M A N D ' [ F I L E . . . ] s e d [ O P T I O N S ] ' C O M M A N D ' [ F I L E . . . ] s e d ' { w h a t t
i n d } d ' < f i l e > # d e l e t i