Bai Tap Shell

You might also like

Download as doc, pdf, or txt
Download as doc, pdf, or txt
You are on page 1of 2

Bi tp lp trnh Shell

Lm vic vi Text
Bi 1: Vit 1 chng trnh Shell c tng dng trong 1 file vn bn. Gia mi ln hin th dng text th c 1 cu hi t Shell: bn c mun c dng k tip ko ? y/n nu tr li l y hoc Y th in dng k tip, trong trng hp ngc li th kt thc chng trnh c. Bi 2: Vit 1 dng lnh cho php c 3 dng u tin trong 1 file vn bn m khng c dng bt c vng lp no. Bi 3: Vit 1 chng trnh trong Shell sao cho vi tham s th nht l tn file text v n s in ra mn hnh ni dung file ny, nhng vi tt c k t u vit hoa. Bi 4: Vit 1 chng trnh Shell chnh sa vn bn text sao cho tt c cc ch ci u dng hoc sau du chm u vit hoa. Bi 5: Vit 1 chng trnh Shell chnh sa vn bn sao cho nu trn 1 dng m c nhiu hn 2 khong trng lin nhau th c thay th bng 1 khong trng.

Lm vic vi cc tham s
Bi 6: Vit chng trnh Shell lit k cc tham s truyn vo chng trnh theo tng dng vi c php: day la tham so thu N va co ten la NNNN bng cc cch sau: Dng vng lp FOR. Dng vng WHILE v lnh SHIFT Dng vng WHILE v khng dng lnh SHIFT. Bi 7: Vit chng trnh Shell phn tch cc tham s v cc i s truyn vo tng ng vi tham s . Gi s chng trnh myshell c th nhn 4 tham s l a,b,c,d nhng ch c tham s c l c i s truyn vo. Khi g cu lnh trong Shell: myshell abc argument d other_argument th vi tham s c ta c i s l argument, ngoi ra chng trnh cn 1 i s l other_argument.

Lm vic vi REGULAR EXPRESSION


Bi 8: Hy vit chng trnh Shell ch nhn tham s c cu to t cc ch ci latinh a-z v cc s t 0-9. Bi 9: c ngy thng hin ti v chuyn tt c sang dng s:thng 1-12, ngy 01-31. Bi 10: Hy vit 1 chng trnh vi tham s u vo l ngy thng nm (bng s) v kim tra xem tnh ng n ca cc gi tr . Bit rng : Cc thng 1,3,5,7,8,10,12 c 31 ngy. Nm nhun c thng 2 l 29 ngy, nu khng th ch c 28 ngy. Cc thng cn li ch c 30 ngy. Nm nhun v nm khng nhun c nh ngha nh sau: o Nm khng chia ht cho 4 th l khng nhun. o Nm chia ht cho 4 v chia ht cho 400 l nm nhun. o Nm chia ht cho 4,khng chia ht cho 400, nhng chia ht cho 100 l nm khng nhun. o Cc nm cn li l nhun. V d : check_date.sh feb 29 2006 cho ta kt qu l d liu nhp sai.

Lm vic vi file
Bi 11: Vit 1 chng trnh, vi tham s u vo l tn file bt k, xc nh s tn ti v xc nh ng dn tuyt i ca file . Bi 12: Vit 1 chng trnh, vi tham s u vo l tn file text. Hy xc nh xem quyn c c i vi file. Nu file khng c c, hy xc nh xem ti sao? (hoc file khng c quyn c hoc th mc cha, ng no ca n khng c quyn thc hin).

Bi 13: Gi s cc file Script u bt u bng #!/bin/sh. Hy vit 1 chng trnh xc nh tt c cc tn file l file dng Script vi tham s u vo l tn 1 th mc no . Bi 14: Vit chng trnh Shell vi hai tham s truyn vo: Tn th mc DIR 1 s nguyn N Lit k tt c cc file bnh thng trong th mc DIR v c kch thc nh hn N. Bi 15: Vit chng trnh vi tham s u vo l tn 1 th mc no v lit k tt c cc th mc con trong n m khng c quyn ghi i vi ngi dng hin ti. Bi 16: Vit chng trnh Shell vi tham s u vo l tn 1 th mc no sao cho cc file trong th mc ny ch c th b xa bi ngi s hu n hoc ngi dng c quyn ghi ln n.

Lm vic vi ngi qun tr


Bi 17: Mt s chng trnh cn chy vi quyn l ROOT. Hy vit 1 chng trnh kim tra xem mnh c l ROOT hay khng. Nu khng th hy xc nh ch s UID ca mnh. Bi 18: Vit 1 chng trnh Shell m phng lnh useradd thm ngi dng vo h thng.Tn ca ngi dng, tham s v Shell c nhp t bn phm. Bn cht ca cng vic l thm cc thng tin cn thit vo cc file /etc/passwd, /etc/group, /etc/shadow. Bi 19: Vit chng trnh Shell m phng lnh userdel vi tham s u vo l tn ngi dng h thng. Bi 20: Vit chng trnh SHELL vi tham s u vo l tn ngi dng trong h thng v xa i cc semaphore, message queue, shared memory do ngi dng ny to ra.

You might also like