Upload
nguyen-thanh-tuyen
View
220
Download
0
Embed Size (px)
Citation preview
7/23/2019 Ti Liu UNIX Ting Vit
1/161
http://vietjack.com/unix/index.jsp Copyright vietjack.com
http://vietjack.com/Trang chia scc bi hc online min ph Page 1
Bi hng dn v Unix/LinuxUnix l mt h iu hnh my tnh m c kh nng thc hin nhiu hot ng bi nhiu ngi
trong cng mt thi gian.
Unix c ra i nm 1969 bi Ken Thompson v Dennis Ritche ti phng th nghim AT&T Bell
Labs. Phn hng dnny cung cp cc kin thc v Unix.
Lot bi hng dn ca chng ti da trn ngun ti liu ca:Tutorialspoint
i vi c giPhn hng dn ny c chun b cho ngi mi bt u hc v Unix, t gip h hiu c
cc kin thc c bn v cc lnh, Shell Scripts v cc tin ch khc ca Unix.
iu kin tin Chng ti gi s rng bn c mt cht kin thc v H iu hnh v cc chc nng ca n. Mt
kin thc c bn v cc khi nim my tnh s cng gip bn trong vic hiu cc bi thc hnh a
dng trong phn hng dn ny.
Tng quan v Unix/LinuxUnix/Linux l g?H iu hnh Unix l tp hp cc chng trnh m thc hin vai tr nh mt ng link gia my
tnh v ngi s dng.
Cc chng trnh my tnh phn cp cc ngun h thng v phi hp tt c cc phn bn trong
ca my tnh c gi l H iu hnh hoc kernel (ht nhn).
Nhng ngi s dng giao tip vi kernel thng qua mt chng trnh m c bit nh l shell.
Shell l mt b bin dch dng lnh, n bin dch cc lnh c nhp bi ngi s dng v
chuyn i chng thnh mt ngn ng m kernel c th hiu.
Unix/Linux c pht trin ln u tin bi mt nhm cc nhn vin AT&T ti phng th
nghim Bell Labs, gm c Ken Thompson, Dennis Ritchie, Douglas Mclloy v Joe
Ossanna.
http://www.tutorialspoint.com/index.htmhttp://www.tutorialspoint.com/index.htmhttp://www.tutorialspoint.com/index.htmhttp://www.tutorialspoint.com/index.htm7/23/2019 Ti Liu UNIX Ting Vit
2/161
http://vietjack.com/unix/index.jsp Copyright vietjack.com
http://vietjack.com/Trang chia scc bi hc online min ph Page 2
C rt nhiu phin bn Unix khc nhau trn th trng. Solaris Unix, AIX, HP Unix v BSD
l mt s v d. Linux cng l mt phin bn ca Unix m l min ph.
Nhiu ngi c th s dng mt my tnh Unix cng mt lc; v th Unix c gi l h
thng a ngi dng.
Mt ngi s dng c th chy nhiu chng trnh cng mt lc; v th Unix c gi l a
nhim.
Cu trc Unix/Linux:S di l cu trc ca mt h thng Unix:
Khi nim chnh m c thng nhttrong tt c cc phin bn Unix gm 4 c s sau:
Kernel: Kernel l tri tim ca h iu hnh. N tng tc vi phn cng v hu ht nhimv nh qun l b nh, qun l file, ln chng trnh nhim v.
Shell:Shell l mt tin ch m x l cc yu cu ca bn. Khi bn g mt lnh ti terminal
ca bn, shell phin dch lnh v gi chng trnh m bn mun. Shell s dng c php
7/23/2019 Ti Liu UNIX Ting Vit
3/161
http://vietjack.com/unix/index.jsp Copyright vietjack.com
http://vietjack.com/Trang chia scc bi hc online min ph Page 3
chun cho tt c cc lnh. C Shell, Bourne Shell v Korn Shell l nhng shell c bit n
nhiu nht v c sn trong hu ht cc phin bn Unix.
Cc lnh v cc tin ch:C rt nhiu lnh v tin ch m bn c th s dng trong cng
vic hng ngy.cp, mv, catv grep l mt s v d ca lnh v tin ch. C trn 250lnh tiu chun cng vi mt s lnh khc c cung cp bi phn mm th 3. Tt c cc
lnh ny i cng vi cc ty chn (chc nng) ca n.
Files v th mc:Tt c d liu trong Unix c t chc trong cc file. Tt c cc file
c t chc vo trong cc th mc. Nhng th mc ny c t chc trong mt cu trc
dng cy c gi nh l h thng file.
Khi ng h thng trong Unix/LinuxNu bn c mt my tnh m ci t h iu hnh Unix trn , th sau n gin bn ch cnbt khi ng h thng.
Ngay sau khi bn bt h thng, h thng bt u khi ng v cui cng n nhc bn ng nhp
vo trong h thng, m hnh ng ng nhp ny c s dng cho cc hot ng thng ngy.
ng nhp Unix/LinuxKhi bn ln u kt ni vi mt h thng Unix, bn thng nhn thy mt dng nhc nh sau:
login:
ng nhph thng Unix/Linux:1. Chun b sn sng ID s dng v mt khu. Lin h vi ngi qun l nu bn cha c n.
2. Nhp ID ti dng nhc ng nhp, sau nhn Enter. ID ca bn l phn bit ch hoa-
thng, v th chc chn rng bn nhp chnh xc nh ngi qun l ch dn.
3. Nhp mt khu vo mt khu v nhn Enter. Mt khu ca bn cng phn bit kiu ch.
4. Nu bn cung cp ID v mt khu chnh xc th sau bn s c cho php vo h
thng. Bn c qua thng tin v cc thng bo m hin trn mn hnh nh hnh di y:
login :amrood
amrood's password:
Last login: Sun Jun 14 09:32:32 2009 from 62.61.164.73
7/23/2019 Ti Liu UNIX Ting Vit
4/161
http://vietjack.com/unix/index.jsp Copyright vietjack.com
http://vietjack.com/Trang chia scc bi hc online min ph Page 4
$
Bn s c cung cp vi mt lnh nhc (i khi c gi l lnh $) m ti bn s nhp tt c
cc lnh ca bn. V d kim tra lch, bn cn nhp lnh calnh sau:
$ cal
June2009
SuMoTuWeThFrSa
1 2 3 4 5 6
7 8 910111213
14151617181920
21222324252627
282930
$
Thay i mt khu trong Unix/LinuxTt c cc h iu hnh Unix u yu cu mt khu m bo cho cc d liu v file ca bn v
cng m bo an ton cho chnh h thng chng li s thm nhp ca hacker hoc cracker. Di
y l cc bc thay i mt khu:
1. bt u, sonpasswdti dng nhc lnh nh hnh di.
2. Nhp mt khu c
3. Nhp mt khu mi m bn mun i. Lun lun gi cho mt khu cng phc tp cng tt
m khng ai c th on c n. Nhng chc chn rng bn nh n.
4. Bn cn xc nhn li mt khu bng cch nhp n thm ln na
$ passwd
Changingpassword foramrood
(current)Unixpassword:******
NewUNIX password:*******
RetypenewUNIX password:*******
passwd:all authentication tokens updated successfully
7/23/2019 Ti Liu UNIX Ting Vit
5/161
http://vietjack.com/unix/index.jsp Copyright vietjack.com
http://vietjack.com/Trang chia scc bi hc online min ph Page 5
$
Ghi ch:Ti t du * vo v tr ch cho bn a im bn cn nhp mt khu c v mi. Ngoi
ra ti h thng ca bn,n s khng hin th bt c k t no khi bn g mt khu vo.
Lit k th mc v file trong Unix/Linux:Tt c d liu trong Unix c t chc vo trong cc file. Tt c cc file c t chc vo trong
cc th mc. Nhng th mc ny c t chc vo trong mt cu trc cy c gi l h thng
file.
Bn c th s dng lnhls lit k tt c cc file hoc th mc c trong mt th mc. Di y
l v d v cch s dng lnhlsvi ty chn-l.
$ ls -l
total 19621
drwxrwxr-x 2amrood amrood 4096Dec2509:59uml
-rw-rw-r-- 1amrood amrood 5341Dec2508:38uml.jpg
drwxr-xr-x 2amrood amrood 4096Feb15 2006univ
drwxr-xr-x 2root root 4096Dec 9 2007urlspedia
-rw-r--r-- 1root root 276480Dec 9 2007urlspedia.tar
drwxr-xr-x 8root root 4096Nov25 2007usr
-rwxr-xr-x 1root root 3192Nov25 2007webthumb.php
-rw-rw-r-- 1amrood amrood 20480Nov25 2007webthumb.tar
-rw-rw-r-- 1amrood amrood 5654Aug 9 2007yourfile.mid
-rw-rw-r-- 1amrood amrood 166255Aug 9 2007yourfile.swf
$
y phn nhp bt u vidbiu din cc th mc. V d nh uml, univ v urlspedia l cc
th mc v phn cn li l file.
Bn l ai trong Unix/Linux?Trong khi bn ng nhp vo h thng, bn cth sn lng bit :Who am I?
Cch n gin nht l tm kim bn l ai l nhp lnh whoami:
7/23/2019 Ti Liu UNIX Ting Vit
6/161
http://vietjack.com/unix/index.jsp Copyright vietjack.com
http://vietjack.com/Trang chia scc bi hc online min ph Page 6
$ whoami
amrood
$
Hy th n trn h thng ca mnh. Lnh ny lit k cc tn ti khon lin kt vi s ng nhp
hin ti. Bn c th th lnh whoami cng nhn thng tin v chnh mnh.
Ai ng nhp trong Unix/Linux?i khi bn c th mun bit ai ng nhp vo my tnh trong cng thi gian.
C 3 lnh c sn gip bn nhn c thng tin ny, da trn c s bn mun bit bao nhiu v
nhng ngi s dng khc:users, whov w.
$ users
amrood bablu qadir
$ who
amrood ttyp0 Oct814:10(limbo)
bablu ttyp2 Oct409:08(calliope)
qadir ttyp4 Oct812:09(dent)
$
Bn hy th lnhwtrn h thng ca bn kim tra kt qu u ra. Lnh ny s lit k mt s
thng tin lin quan ti ngi ng nhp vo trong h thng.
Thot khi chng trnh trong Unix/LinuxKhi bn kt thc phin lm vic ca mnh, bn cn thot khi chng trnh m bo rng
khng ai c th truy cp vo cc file ca bn khi h gi trang bn.
thot khi chng trnh:1. Bn ch cn g lnhlogoutti dng lnh nhc, v h thng s v sinh mi th v ngt kt
ni.
ng h thng trong Unix/Linux
7/23/2019 Ti Liu UNIX Ting Vit
7/161
http://vietjack.com/unix/index.jsp Copyright vietjack.com
http://vietjack.com/Trang chia scc bi hc online min ph Page 7
Cch ph hp nht ng h thng Unix l thng qua s dng mt trong cc lnh sau:
Lnh Miu t
halt ng h thng ngay lp tc.
init 0ng h thng s dng script c xc nh trc ng b v v sinh
h thng trc khi shutdown.
init 6Khi ng li h thng bng cch ng h thng ngay lp tc v sau
bt u li nh lc trc khi ng
poweroff ng h thng ch poweroff
reboot Khi ng li h thng
shutdown ng h thng
Bn phi l ngi s dng chnh c th c quyn ng h thng, nhng i khi ngi i din
cng c th thc hin iu ny.
Qun l File trong UnixTt c d liu trong Unix c t chc trong cc file. Tt c cc file c t chc trong cc th
mc. Nhng th mc ny c t chc trong mt cu trc cy m c gi l h thng file.
Khi bn lm vic vi Unix, bng cch ny hay cch khc, bn dnh hu ht thi gian lm vic vi
cc file. Chng ny s hng dn bn cch to v di chuyn cc file, sao chp v t li tn cho
chng, to lin kt cho chng.
Trong Unix, c 3 kiu file c bn:
1. Ordinary File:File thng, l mt file trn h thng m lu tr d liu, vn bn, hoc ch
dn chng trnh. Trong chng ny, bn s c hng dn cch lm vic vi nhng
file ny.
7/23/2019 Ti Liu UNIX Ting Vit
8/161
http://vietjack.com/unix/index.jsp Copyright vietjack.com
http://vietjack.com/Trang chia scc bi hc online min ph Page 8
2. Directory:Th mc, lu gi c cc file thng v c bit. Tng t vi cc th mc
trong Windown, Mac OS, th mc trong Unix l cc folder.
3. Special File:File c bit, mt s file c bit cung cp quyn truy cp vo phn cng nh
cc cng, CD-ROM, modem v cc u c Ethernet. Mt s file c bit khc l tngt nh cc phm tt v khin bn c th truy cp vo mt file ring no bng cch s
dng cc tn khc nhau.
Lit k cc file trong Unix/Linux lit k cc file v cc th mc lu gi trong th mc hin ti, bn s dng lnh sau:
$ls
Di y l v d v kt qu ca lnh trn.
$ls
bin hosts lib res.03
ch07 hw1 pub test_results
ch07.bak hw2 res.01 users
docs hw3 res.02 work
Lnhlsh tr ty chn-lgip bn nhn c nhiu thng tin hn v cc file c lit k.
$ls -l
total 1962188
drwxrwxr-x 2amrood amrood 4096Dec2509:59uml
-rw-rw-r-- 1amrood amrood 5341Dec2508:38uml.jpg
drwxr-xr-x 2amrood amrood 4096Feb15 2006univ
drwxr-xr-x 2root root 4096Dec 9 2007urlspedia
-rw-r--r-- 1root root 276480Dec 9 2007urlspedia.tar
drwxr-xr-x 8root root 4096Nov25 2007usr
drwxr-xr-x 2 200 300 4096Nov25 2007webthumb-1.01
-rwxr-xr-x 1root root 3192Nov25 2007webthumb.php
-rw-rw-r-- 1amrood amrood 20480Nov25 2007webthumb.tar
7/23/2019 Ti Liu UNIX Ting Vit
9/161
http://vietjack.com/unix/index.jsp Copyright vietjack.com
http://vietjack.com/Trang chia scc bi hc online min ph Page 9
-rw-rw-r-- 1amrood amrood 5654Aug 9 2007yourfile.mid
-rw-rw-r-- 1amrood amrood 166255Aug 9 2007yourfile.swf
drwxr-xr-x 11amrood amrood 4096May29 2007zlib-1.2.3
$
Di y l cc thng tin v tt c cc ct c lit k:
1. Ct u tin: biu din kiu file v s cho php c cung cp cho file. phn bn di l
miu t ca cc kiu file.
2. Ct 2: biu din lng b nh m file hoc th mc chim dng.
3. Ct 3: biu din s s hu ca file. l ngi s dng Unix to ra file ny.
4. Ct 4: biu din nhm s hu. Mi ngi s dng Unix c mt nhm lin kt.
5. Ct 5: biu din dung lng bng byte ca file.
6. Ct 6: biu din ngy thng m file c to hay chnh sa ln cui.
7. Ct 7: biu din tn file hoc th mc.
Trong v d v ls-l, mi dng file bt u vi mt k t d, -, hoc l. Nhng k t ny ch kiu ca file
c lit k.
Tin t Miu t
-File thng chng hn nh mt file vn bn ASCII, nh phn hoc ng link
cng.
bNhm file c bit. nhm file thit b u vo/u ra v d nh mt a cng
vt l.
cFile k t c bit. File thit b u vo/u ra th v d nh mt a cng vt
l.
d File th mc m cha mt danh sch cc file v th mc khc.
7/23/2019 Ti Liu UNIX Ting Vit
10/161
http://vietjack.com/unix/index.jsp Copyright vietjack.com
http://vietjack.com/Trang chia scc bi hc online min ph Page 10
l File lin kt k t. Kt ni trn bt k mt file thng no.
p Pipe c t tn. Mt c cu giao tip lin tin trnh.
s Socket c s dng cho giao tip lin tin trnh.
Cc siu k t trong Unix/LinuxCc siu k t c ngha quan trng trong Unix. V d*v ?l siu k t. Chng ta s dng*
kt ni 0 hoc nhiu k t, s dng? kt ni vi mt k t n.
V d:
$ls ch*.doc
Hin th tt c cc file m tn bt u vi cp k t ch v kt thc vi .doc.
ch01-1.doc ch010.doc ch02.doc ch03-2.doc
ch04-1.doc ch040.doc ch05.doc ch06-2.doc
ch01-2.docch02-1.docc
Di y k t*thc hin kt ni vi bt k k t no. Nu bn mun hin th tt c cc file kt
thc vi.doc, th khi bn s dng lnh sau:
$ls *.doc
Cc file n trong Unix/LinuxMt file khng nhn thy l mt file m cc k t u tin ca n l du chm (.). Cc chng trnh
Unix (bao gm shell) s dng hu ht nhng file ny gi cc thng tin cu hnh.
Mt vi v d v cc file n bao gm:
.profile: l script khi to Bourne shell (sh)
.kshrc: l script khi to Korn shell (ksh)
.cshrc: l script khi to C shell (csh)
.rhosts: l file nh hnh shell iu khin t xa.
7/23/2019 Ti Liu UNIX Ting Vit
11/161
http://vietjack.com/unix/index.jsp Copyright vietjack.com
http://vietjack.com/Trang chia scc bi hc online min ph Page 11
lit k cc file nhn khng nhn thy (b n), xc nh ty chn -a cho lnh ls:
$ ls -a
. .profile docs lib test_results
.. .rhosts hosts pub users
.emacs bin hw1 res.01 work
.exrc ch07 hw2 res.02
.kshrc ch07.bak hw3 res.03
$
Du chm n (.): i din cho th mc hin ti
Du chm kp (..): i din cho th mc gc.
To cc file trong Unix/LinuxBn c th s dngvieditor to ra cc file thng trn h thng Unix. Bn ch cn n gin s
dng lnh sau:
$ vi filename
Lnh trn s m mt file vi tn cung cp. Bn s cn nhn phmi tin vo ch chnh
sa. Mt khi bn trong ch chnh sa, bn c th bt u vit ni dung vo file nh hnh di:
Thisisunix file....I created it forthe first time.....
I'm going to save this content in this file.
Khi thc hin xong, bn lm theo cc bc sau:
Nhn phmesc thot khi ch ny
Nhn t hp phmShift+ZZ thot khi file hon ton.
By gi bn s c mt file c to vi filenametrong th mc hin ti.
$ vi filename
$
Chnh sa cc file trong Unix/Linux
7/23/2019 Ti Liu UNIX Ting Vit
12/161
http://vietjack.com/unix/index.jsp Copyright vietjack.com
http://vietjack.com/Trang chia scc bi hc online min ph Page 12
Bn c th chnh sa cc file hin ti bng cch s dng b son vi. Chng ta s i vo chi tit
tng phn trong mt chng hng dn c th. Nhng rt gn y, bn c th m mt file ang
tn ti nh sau:
$ vi filename
Mt khi file ny c m, bn c th tin vo ch chnh sa bng cch nhn ph m iv sau
bn c th chnh sa ni dung nh bn thch. Nu bn mun di chuyn ti ni ny hoc ni khc
bn trong file, khi u tin bn cn thot khi ch chnh sa bng cch nhn phm esc, sau
bn c th s dng cc phm sau di chuyn bn trong mt file:
Phm l di chuyn sang pha bn phi;
Phm h di chuyn sang bn tri;
Phm k di chuyn ln pha trn trong mt file;
Phmj di chuyn xung pha di trong mt file
Do bng cch s dng cc phm trn, bn c th t con tr bt c v tr no bn mun chnh
sa. Mt khi bn xc nh v tr, sau bn c th s dng phm i tin vo ch chnh sa.
Sau khi bn thc hin xong, nhnescv cui cng nhn t hp phmShift+ZZ thot khi file
hon ton.
Hin th ni dung ca mt file trong Unix/LinuxBn c th s dng lnhcat quan st ni dung ca mt file. Di y l v d n gin quan
st ni dung ca mt file c to.
$ cat filename
Thisisunix file....I created it forthe first time.....
I'm going to save this content in this file.
$
Bn c th hin th s lng dng bng cch s dng ty chn-bcng vi lnhcatnh sau:
$ cat -b filename
1 Thisisunix file....I created it forthe first time.....
2 I'm going to save this content in this file.
7/23/2019 Ti Liu UNIX Ting Vit
13/161
http://vietjack.com/unix/index.jsp Copyright vietjack.com
http://vietjack.com/Trang chia scc bi hc online min ph Page 13
$
Tnh ton s lng t trong mt file trong Unix/LinuxBn c th s dng lnhwc nhn c s dng, s lng t v s lng cc k t c trong
mt file. Di y l mt v d n gin quan st thng tin v file c to trn.
$ wc filename
2 19103filename
$
Di y l chi tit trong 4 ct:
1. Ct 1: i din cho tng s dng trong file ;
2. Ct 2: i din cho tng s t trong file ;
3. Ct 3: i din cho tng dung lng byte m file chim. y l kch thc thc ca file.
4. Ct 4: i din cho tn file.
Bn c th ng thi nhn c thng tin v nhiu file trong cng mt lc bng c php n gin
sau:
$ wc filename1 filename2 filename3
Sao chp cc file trong Unix/Linux to mt bn sao ca mt file, bn s dng lnhcp. C php n gin ca lnh nyl:
$ cp source_file destination_file
Di y l v d to mt bn sao cafilenameang tn ti:
$ cp filename copyfile
$
By gi bn s tm thy mtcopyfiletrong th mc hin ti ca bn. File ny s ging hon
ton filename.
t li tn file
7/23/2019 Ti Liu UNIX Ting Vit
14/161
http://vietjack.com/unix/index.jsp Copyright vietjack.com
http://vietjack.com/Trang chia scc bi hc online min ph Page 14
thay i tn ca mt file, bn s dng lnhmv. C php n gin ca lnh ny l:
$ mv old_file new_file
Di y l mt v d m t lifilenameang tn ti thnhnewfile:
$ mv filename newfile
$
Lnhmvs di chuyn tt c file ang tn ti vo trong file mi. V th trong tnh hung ny bn s
ch tm thy mtnewfileduy nht trong th mc hin ti.
Xa file xa mt file ang tn ti, bn s dng lnhrm. C php n gin ca n l:
$ rm filename
Ch : C th rt nguy him khi xa mt file bi v n cha thng tin hu ch. V th bn cn phi
cn thn trong khi thc hin lnh ny. N ngh ty chn -isong song vi lnhrm.
Di y l v d m g b hon tonfilenameang tn ti:
$ rm filename
$
Bn c th g b nhiu file ti cng mt lp nh sau:
$ rm filename1 filename2 filename3
$
Cc Unix Stream tiu chun trong Unix/LinuxCc chi tit trong chng trnh Unix c 3 stream (hoc file) c m cho n khi n bt u:
1. stdin: N nh l mt u vo tiu chun (standard input) v phn t m t filelin kt l 0.
N cng c biu din nh l STDIN. Chng trnh Unix s c u vo mc nh t
STDIN.
7/23/2019 Ti Liu UNIX Ting Vit
15/161
http://vietjack.com/unix/index.jsp Copyright vietjack.com
http://vietjack.com/Trang chia scc bi hc online min ph Page 15
2. stdout: N nh l mt u ra tiu chun (standard output) v phn t m t file lin kt l 1.
N cng c biu din nh l STDOUT. Chng trnh Unix s vit u ra mc nh ti
STDOUT.
3. stderr: N nh l mt li tiu chun (standard error) v phn t m t file lin kt l 2. Ncng c biu din nh l STDERR. Chng trnh Unix s vit ton b thng tin li ti
STDERR.
Qun l th mc trong UnixMt th mc l mt file m nhim v duy nht ca n l lu gi tn v cc thng tin lin quan v
file. Tt c cc file, c th l file thng, c bit hoc th mc c gi trong cc th mc.
UNIX s dng mt cu trc th bc t chc cc file v th mc. Cu trc ny thng c
nhc n nh l mt cy th mc. Cy ny c mt im root node, mt k t gch cho (/) v tt
c cc th mc c cha di n.
Th mc gc (Home) trong Unix/LinuxTh mc m bn thy ngay khi bn ln u tin ng nhp vo l th mc chnh.
Bn s lm nhiu vic trong th mc chnh v cc th mc ph ni bn to ra t chc cc file
ca bn.
Bn c th tin vo th mc chnh bt c khi no bng cch s dng lnh sau:
$cd ~
$
Ti y biu tng ~ ch th mc chnh. Nu bn mun vo th mc chnh ca bt c ngi s
dng no khc, bn s dng lnh sau:
$cd ~username
$
vo th mc cui cng, bn c th s dng lnh sau:
$cd -
$
7/23/2019 Ti Liu UNIX Ting Vit
16/161
http://vietjack.com/unix/index.jsp Copyright vietjack.com
http://vietjack.com/Trang chia scc bi hc online min ph Page 16
Pathname tuyt i/quan h trong Unix/LinuxCc th mc c sp xp trong mt h thng cp bc vi gc (/) trn cng. V tr ca bt k file
no trong h thng ny c miu t bi pathname ca n.
Cc phn t ca pathname l tch ring nhau bi mt du (/). Mt pathname l gi tr tuyt i nu
n c miu t trong mi lin quan vi gc, v th pathname tuyt i thng bt u vi mt
du (/).
Di y l v d v cc filename tuyt i.
/etc/passwd
/users/sjones/chem/notes
/dev/rdsk/Os3
Mt pathname c th trong mi quan h ti th mc lm vic hin ti ca bn. Cc pathname
tng i khng bao gi bt u vi (/). Lin quan n th mc chnh amrood, c mt s
pathname trng ging nh sau:
chem/notes
personal/res
xc nh ni bn ang trong h thng phn cp file vo bt k lc no, bn nhp lnhpwd
in th mc lm vic hin ti.
$pwd
/user0/home/amrood
$
Lit k cc th mc trong Unix/Linux lit k danh sch cc th mc, bn c th s dng c php sau:
$ls dirname
Di y l v d lit k tt c file c cha trong th mc /usr/local.
$ls /usr/local
7/23/2019 Ti Liu UNIX Ting Vit
17/161
http://vietjack.com/unix/index.jsp Copyright vietjack.com
http://vietjack.com/Trang chia scc bi hc online min ph Page 17
X11 bin gimp jikes sbin
ace doc include lib share
atalk etc info man ami
To cc th mc trong Unix/LinuxCc th mc c to ra bng lnh sau:
$mkdir dirname
Ti y, th mc l pathname tuyt i hoc quan hm bn mun to ra. V d, lnh sau:
$mkdir mydir
$
To th mc mkdir trong th mc hin ti. Di y l v d:
$mkdir /tmp/test-dir
$
Lnh ny to th mc test-dir trong th mc /tmp. Lnh mkdir khng to u ra nu n thnh cng
to th mc yu cu.
Nu bn cung cp nhiu hn mt th mc trn dng lnh th mkdir to ra mi trong cc th mc.
V d:
$mkdir docs pub
$
N to ra th mc docs v pub di th mc hin ti.
To cc th mc cha (parent) trong Unix/Linuxi khi bn mun to mt th mc, th mc chnh hoc cc th mc ca n khng tn ti. Trong
trng hp ny, lnhmkdira ra mt thng bo li nh sau:
$mkdir /tmp/amrood/test
mkdir:Failedto make directory "/tmp/amrood/test";
Nosuch file ordirectory
$
7/23/2019 Ti Liu UNIX Ting Vit
18/161
http://vietjack.com/unix/index.jsp Copyright vietjack.com
http://vietjack.com/Trang chia scc bi hc online min ph Page 18
Trong trng hp trn, bn c th chnh ty chn-pti lnhmkdir. N to tt c cc th mc
cn thit cho bn. V d:
$mkdir -p /tmp/amrood/test
$
Lnh trn to tt c cc th mc chnh cn thit.
D b cc th mc trong Unix/LinuxCc th mc c th c xa bng cch s dng lnhrmdirnh sau:
$rmdir dirname
$
Ghi ch: d b mt th mc, bn nn chc chn n khng cn cha d liu quan trng no,
ngha l khng c bt k file hoc th mc ph bn trong th mc ny.
Bn c th d b nhiu th mc ti cng thi im nh sau:
$rmdir dirname1 dirname2 dirname3
$
Lnh trn d b cc th mc dirname1, dirname2 v dirname3 nu chng l trng. Lnh rmdir
khng to ra u ra nu n thc hin thnh cng.
Thay i cc th mc trong Unix/LinuxBn c th s dng lnh cd to nhiu thay i ti th mc home. Bn c th s dng n
thay i bt k th mc no bng cch xc nh path tuyt i v quan h hp l. C php nh
sau:
$cd dirname
$
Ti y, dirname l tn ca th mc m bn mun to cc thay i. V d, lnh:
$cd /usr/local/bin
$
7/23/2019 Ti Liu UNIX Ting Vit
19/161
http://vietjack.com/unix/index.jsp Copyright vietjack.com
http://vietjack.com/Trang chia scc bi hc online min ph Page 19
To thay i ti th mc /usr/local/bin. T th mc ny bn c th cd th mc /usr/home/amrood
bng cch s dng path quan h sau:
$cd ../../home/amrood
$
t li tn cc th mc trong Unix/LinuxLnh mv c th c s dng t li tn mt th mc. C php nh sau:
$mv olddir newdir
$
Bn c th t li tn mt th mcmydirthnh yourdirnh sau:
$mv mydir yourdir
$
Cc th mc .(dot) v .. (dot dot) trong Unix/LinuxTn file l .(dot) biu din th mc lm vic hin ti; v tn file l .. (dot dot) biu din th mc
lp trn th mc lm vic hin ti, thng l th mc chnh.
Nu chng ta nhp lnh ny ch mt danh snh cc th mc lm vic hin ti v s dng ty
chn-a lit k tt c cc file v ty chn -lcung cp kiu danh sch di, iu ny s cho ra ktqu sau:
$ls -la
drwxrwxr-x 4 teacher class 2048 Jul1617.56.
drwxr-xr-x 60 root 1536 Jul1314:18..
---------- 1 teacher class 4210 May108:27.profile
-rwxr-xr-x 1 teacher class 1948 May1213:42memo
$
Quyn hn/Ch truy cp file trong UnixQuyn s hu file l mt thnh phn quan trng ca Unix m cung cp phng thc bo mt
lu gi file. Mi file trong Unix c cc thuc tnh sau th hin quyn hn truy cp ti n ( File
Permission):
7/23/2019 Ti Liu UNIX Ting Vit
20/161
http://vietjack.com/unix/index.jsp Copyright vietjack.com
http://vietjack.com/Trang chia scc bi hc online min ph Page 20
Quyn hn truy cp ca ngi s hu: Quyn hn truy cp ca ch nhn quyt nh
nhng hnh ng g m ngi s hu c th thc hin trn file.
Quyn hn truy cp nhm: Quyn hn truy cp ca nhm quyt nh hnh ng g m
ngi s dng, thnh vinca nhm m s hu file, c th thc hin trn file.
Cc quyn hn truy cp khc: Ch hnh ng no m tt c nhng ngi s dng c th
thc hin trn file.
Cc du hiu v quyn hn truy cpTrong khi s dng lnhls -l, n hin th cc thng tin a dng lin quan n quyn hn truy cp
trn file nh sau:
$ls -l /home/amrood-rwxr-xr-- 1amrood users 1024 Nov200:10 myfile
drwxr-xr---1amrood users 1024 Nov200:10 mydir
Ti y, ct u tin i din cho cc ch truy cp khc nhau, v d nh quyn hn truy cp lin
kt vi mt file hoc th mc.
Cc quyn hn truy cp c chia thnh ba nhm, m mi v tr trong nhm biu hin mt quyn
hn truy cp c th, theo th t: c (r), vit (w) v thc thi (x):
Cc k t u tin t 1 n 3 (2-4 trong dy k c du -) i din quyn hn truy cp cho
ngi s hu file. V d-rwxr-xr--biu din rng ngi s hu c cho php c (r), vit
(w), v chy chng trnh (x).
Nhm 3 k t tip theo t 5-7 i din cho quyn hn truy cp nhm ti nhng files hu.
V d-rwxr-xr--i din rng nhm c cho php c (r) v thc thi (x), nhng khng cho
php vit (w)
Nhm 3 k t cui cng t 8-10 i din quyn hn truy cp khc. V d-rwxr-xr--i din
rng ai trn th gii ch cho php c (r).
Ch truy cp vo file trong Unix/LinuxQuyn hn truy cp ca mt file l dng u tin ca s bo v trong h thng Unix. Cc khi xy
dng c bn trong quyn hn truy cp Unix l cc quyn hn truy cp c, vit v thc thi c
miu t di y:
7/23/2019 Ti Liu UNIX Ting Vit
21/161
http://vietjack.com/unix/index.jsp Copyright vietjack.com
http://vietjack.com/Trang chia scc bi hc online min ph Page 21
1. c:Cho php c ni dung ca file.
2. Vit:Cho php chnh sa hoc g b ni dung ca file.
3. Thc thi:Ngi s dng vi quyn hn truy cp thc thi c th chy mt file nh l mt chng trnh.
Ch truy cp vo th mcCc ch truy cp vo th mc clit k v t chc trong cng mt cch nh trong bt k mt
file no. C mt vi im khc nhau m bn cn ch :
1. c:Truy cp vo mt th mc vi ngha l ngi s dng c th c cc ni dung. Ngi s dng c
th xem tn cc file bn trong mt th mc.
2. VitCho php ngi s dng c th thm hoc xa file ni dung ca th mc.
3. Thc thi:Chy mt th mc khng thc s mang nhiu ngha, v th bn ch coi l giy php ngang
qua.
Mt ngi s dng phi c quyn truy cp thc thi ti th mc bin chy lnh ls hoc cd chng
hn.
Thay i cc quyn hn truy cp trong Unix/Linux thay i quyn hn truy cp ca file hoc th mc, bn s dng lnhchmod(vit tt ca
change mode). C hai cch s dng chmod l: ch tng trng (Symbolic Mode) v ch
tuyt i (Absolute Mode).
S dng chmode trong ch tng trng
7/23/2019 Ti Liu UNIX Ting Vit
22/161
http://vietjack.com/unix/index.jsp Copyright vietjack.com
http://vietjack.com/Trang chia scc bi hc online min ph Page 22
Cch d nht cho ngi mi bt u chnh sa quyn hn truy cp file hoc th mc l s
dng ch tng trng. Vi ch ny bn c th thm, xa hoc xc nh tp hp cc cho
php m bn mun bng cch s dng cc ton t sau:
Ton t chmod Miu t
+ Thm quyn hn truy cp c ch nh ti mt file hoc tp
-G b quyn hn truy cp c ch nh t mt file hoc
th mc
= Thit lp cc quyn hn truy cp c ch nh.
Di y l mt v d bng cch s dng lnh testfile. Chy ls -1 trn testfile ch rng quyn hn
truy cp ca file l nh sau:
$ls -l testfile
-rwxrwxr-- 1amrood users 1024 Nov200:10 testfile
Sau mi v d lnh chmod t bng trc c chy trn testfile, theo sau bi ls -l v th bn c
th quan st cc thay i ca quyn hn truy cp.
$chmod o+wx testfile
$ls -l testfile
-rwxrwxrwx 1amrood users 1024 Nov200:10 testfile
$chmod u-x testfile
$ls -l testfile
-rw-rwxrwx 1amrood users 1024 Nov200:10 testfile
$chmod g=rx testfile
$ls -l testfile
-rw-r-xrwx 1amrood users 1024 Nov200:10 testfile
Ti y l cch bn c th kt ni nhng lnh ny trn mt dng n:
$chmod o+wx,u-x,g=rx testfile
$ls -l testfile
7/23/2019 Ti Liu UNIX Ting Vit
23/161
http://vietjack.com/unix/index.jsp Copyright vietjack.com
http://vietjack.com/Trang chia scc bi hc online min ph Page 23
-rw-r-xrwx 1amrood users 1024 Nov200:10 testfile
S dng chmod vi quyn hn truy cp tuyt i trongUnix/LinuxCch th hai chnh sa quyn hn truy cp vi lnh chmod l s dng s xc nh cc
quyn hn truy cp cho file.
Mi quyn hn truy cp c n nh bng mt gi tr, nh trong bng di, v tng ca mi
quyn hn truy cp cung cp mt s cho tp hp thit lp .
S i din cho quyn hn truy cp trong h c s 8 Tham chiu
0 Khng cho php ---
1 Cho php thc thi --x
2 Cho php vit -w-
3 Cho php thc thi v vit: 1 (thc thi) + 2 (vit) = 3 -wx
4 Cho php c r--
5 Cho php c v thc thi: 4(c) + 1 (thc thi) = 5 r-x
6 Cho php c v vit: 4 (c) + 2 (vit) = 6 rw-
7 Cho php tt c: 4 (c) + 2 (vit) + 1 (thc thi) = 7 rwx
Ti y l mt v d s dng testfile. Chy ls -1 trn testfile ch rng cc quyn hn truy cp ca file
l nh sau:
$ls -l testfile
-rwxrwxr-- 1amrood users 1024 Nov200:10 testfile
Mi v d lnh chmod t bng trc c chy trn testfile, theo sau bi ls -l v th bn c th
quan st cc thay i ca quyn hn truy cp:
7/23/2019 Ti Liu UNIX Ting Vit
24/161
http://vietjack.com/unix/index.jsp Copyright vietjack.com
http://vietjack.com/Trang chia scc bi hc online min ph Page 24
$ chmod 755testfile
$ls -l testfile
-rwxr-xr-x 1amrood users 1024 Nov200:10 testfile
$chmod 743testfile
$ls -l testfile
-rwxr---wx 1amrood users 1024 Nov200:10 testfile
$chmod 043testfile
$ls -l testfile
----r---wx 1amrood users 1024 Nov200:10 testfile
Thay i ngi s hu v nhm trong Unix/LinuxTrong khi to mt ti khon trn Unix, n gn mt ID ngi s hu v mt ID s hu nhm cho
mi ngi s dng. Tt c cc quyn hn truy cp cp trn l cng c gn da trn ngi
s hu v nhm.
Hai lnh c sn thay i s hu c nhn v s hu nhm ca file l:
1. chown:Lnh ny i din cho thay i s hu c nhn (change owner).
2. chgrp:Lnh ny i din cho thay i s hu nhm (change group).
Thay i quyn s hu trong Unix/LinuxLnh chown thay i quyn s hu ca mt file. C php c bn l:$ chown user filelist
Gi tr ca user c th l tn hoc ID ca ngi s dng trn h thng. V d:
V d:
$ chown amrood testfile
$
Thay i ngi s hu ca file cho ti ngi s hu amrood.
Ghi ch:Ngi s hu gc c quyn khng b hn ch thay i quyn s hu ca bt k file
no nhng ngi s hu thng thng ch c th thay i quyn s hu ca nhng file m h s
hu.
7/23/2019 Ti Liu UNIX Ting Vit
25/161
http://vietjack.com/unix/index.jsp Copyright vietjack.com
http://vietjack.com/Trang chia scc bi hc online min ph Page 25
Thay i quyn s hu nhm trong Unix/LinuxLnhchrgp thay i s hu nhm ca file. C php n gin l:
$ chgrp groupfilelist
Gi tr ca group c th l tn hoc ID ca nhm trn h thng. V d:
V d:
$ chgrp special testfile
$
Thay i s hu nhm chn ti nhmspecial.
Quyn hn truy cp SUID v SGID (thit lp ID cnhn v nhm) trong Unix/LinuxThng thng khi mt lnh c chy, n s phi chy cng vi cc c quyn c bit thc
hin nhim v ca n.
Nh mt v d, khi bn thay i mt khu vi lnhpasswd, mt khu mi c gi trong tp
/etc/shadow.
Khi l mt ngi s dng thng, bn khng c c quyn truy cp c hoc vit ti file nydo cc l do bo mt, nhng khi bn thay i mt khu, bn cn c quyn vit ti file ny. iu ny
c ngha l chng trnhpasswdphi cung cp cho bn cc quyn thm bn c th vit
etc/shadow.
Cc quyn thm vo c cung cp ti chng trnh thng qua mt k thut c bit n
l Thit lp ID ngi s dng (Set User IDSUID bit) v Thit lp ID nhm (Set Group ID SGID
bit).
Khi bn chy mt chng trnh m c quyn hn truy cpSUID, bn s dng n thay i s
hu ca chng trnh . Cc chng trnh m khng thit lp SUID th ang chy vi quyn hn
truy cp ca ngi s dng m khi ng chng trnh.
iu ny l ng vi SGID. Cc chng trnh thng thng chy vi quyn hn truy cp nhm,
nhng thay vo , n ch thay i s hu nhm cho chng trnh ang chy ch khng thay i
cho chng trnhkhc ca nhm.
7/23/2019 Ti Liu UNIX Ting Vit
26/161
http://vietjack.com/unix/index.jsp Copyright vietjack.com
http://vietjack.com/Trang chia scc bi hc online min ph Page 26
Cc bit SUID bit v SGID bit s xut hin bng k t s nu quyn hn truy cp l c sn. SUID s
bit s c t trong cc permission bit, ni m ngi s hu thc thi s c thm quyn. V d,
lnh sau:
$ ls -l /usr/bin/passwd
-r-sr-xr-x 1 root bin 19031Feb713:47 /usr/bin/passwd*
$
iu ny ch rng SUID bit c thit lp v lnh c s hu bi s hu gc. K t vit hoa S
trong v tr thc thi thay cho ch thng s ch rng bit ca thc thi khng c thit lp.
Nusticky bitc cho php trn th mc, cc file ch c th c g b nu bn l mt trong
nhng ngi s dng sau:
Ngi s hu ca th mc sticky;
Ngi s hu ca cc file b g b;
Ngi s hu gc
thit lp cc SUID bit v SGID bit cho bt k th mc, bn th c php sau:
$ chmod ug+s dirname
$ ls -l
drwsr-sr-x 2root root 4096Jun1906:45dirname
$
Ci t mi trng Unix/LinuxMt khi nim Unix quan trng lenvironment, m c nh ngha bi cc bin mi trng. Mt
s c thit lp bi h thng, s khc c thit lp bi bn, bi shell hoc bt k chng trnh
m bn ti v.
Mt bin l mt chui k t m chng ta gn mt gi tr. Gi tr c ch nh c th l mt s, vn
bn, tn file, thit b hoc bt k kiu d liu khc.
V d, u tin chngta thit lp mt bin TEST v sau chng ta truy cp gi tr ca n bng
cch s dng lnhecho.
7/23/2019 Ti Liu UNIX Ting Vit
27/161
http://vietjack.com/unix/index.jsp Copyright vietjack.com
http://vietjack.com/Trang chia scc bi hc online min ph Page 27
$TEST="Unix Programming"
$echo $TEST
UnixProgramming
Ghi ch rng cc bin mi trng c thit lp m khng s dng k hiu $ nhng trong khi truycp chng, chng ta s dng k hiu $ nh l mt tin t. Nhng bin ny gi gi tr ca chng
cho n khi chng ta thot khi shell.
Khi bn ng nhp vo h thng, Shell di ch khi to thit lp mi trng bin. iu
ny thng l tin trnh 2 bc m bao gm Shell c cc file sau:
/etc/profile
profile
Tin trnh nh sau:
1. Kim tra shell thy/etc/profilec tn ti hay khng..
2. Nu n tn ti, Shell c n. Nu khng th, file ny b b qua. Khng c thng bo li hin
th.
3. Shell kim tra file.profilec tn ti hay khng trong th mc chnh ca bn. Th mc chnh
l th mc m bt u khi bn ng nhp thnh cng vo h thng.
4. Nu n tn ti, Shell c n; nu khng th, Shell b qua. S khng c thng bo li c
hin th.
Ngay sau khi c hai file trn c c, Shell hin th mt dng nhc:
$
y l dng nhc m ti bn c th nhp lnh thc thi chng.
Ghi ch- Tin trnh khi to Shel c lit k chi tit y p dng cho tt c Shell kiuBourne,
nhng mt vi file c thm vo c s dng bi bashv ksh.
.profile File trong Unix/Linux:File/etc/profilec duy tr bi ngi qun l h thng v cha ng thng tin khi to Shell
c yu cu bi tt c ngi s dng trn h thng.
7/23/2019 Ti Liu UNIX Ting Vit
28/161
http://vietjack.com/unix/index.jsp Copyright vietjack.com
http://vietjack.com/Trang chia scc bi hc online min ph Page 28
File .profilel di quyn kim sot ca bn. Bnc th nhp thm thng tin Shell ty theo bn
mun ti file ny. Thng tin t nht m bn cn thit lp bao gm:
Kiu terminal m bn ang s dng
Danh sch cc th mc m trong t v tr cc lnh
Danh sch cc bin ca kiu terminal ca bn.
Bn cth kim tra.profiletrong th mc chnh. M n bng cch s dng b son viv kim tra
tt c cc bin thit lp cho mi trng ca bn.
Thit lp kiu terminal trong Unix/LinuxThng th kiu terminal bn ang s dng l c nh hnh t ng bng chng
trnhloginhocgetty. i khi, tin trnh nh hnh t ng ny d on kiu terminal ca bn
khng chnh xc.
Nu kiu terminal khng c thit lp chnh xc, kt qu ca lnh c th trng kh l, hoc bn
khng th tng tc vi Shell mt cch chnh xc.
m bo khng xy ra trng hp ny, hu ht ngi s dng thit lp kiu terminal ca h ti
dng mu s chung thp nht nh sau:
$TERM=vt100
$
Thit lp PATH trong Unix/Linux:Khi bn g bt k lnh no trn dng nhc lnh, Shell phi xc nh v tr lnh trc khi n c th
c thc thi.
Bin PATH xc nh v tr trong Shell s tm kim cc lnh. Thng th n c thit lp nh
sau:
$PATH=/bin:/usr/bin
$
Ti y mi cng vo (entry) c thit lp ring r bi du hai chm : l cc th mc. Nu bn
yu cu Shell thc thi mt lnh v n khng th tm kim lnh trong bt k th mc c
cung cp bin PATH, mt thng tin tng t nh sau xut hin:
7/23/2019 Ti Liu UNIX Ting Vit
29/161
http://vietjack.com/unix/index.jsp Copyright vietjack.com
http://vietjack.com/Trang chia scc bi hc online min ph Page 29
$hello
hello:notfound
$
Cc bin PS1 v PS2 c bn lun trong mc k tip.
Cc bin PS1 v PS2 trong Unix/LinuxCc k t m Shell hin th khi dng nhc lnh c gi trong bin PS1. Bn c th thay i bin
ny ti bt k ci g bn mun. Ngay sau khi bn thay i n, n s c s dng bi shell t thi
im .
V d, nu bn thng bo lnh:
$PS1='=>'
=>
=>
=>
Dng nhc c th tr thnh =>. thit lp gi tr ca PS1 n ch th mc lm vic, thng bo
lnh sau:
=>PS1="[\u@\h \w]\$"
[root@ip-72-167-112-17/var/www/tutorialspoint/unix]$
[root@ip-72-167-112-17/var/www/tutorialspoint/unix]$
Kt qu ca lnh ny l dng nhc lnh hin th tn s dng ca ngi dng, tn hostname, v th
mc lm vic.
C mt vi dy thot (escape) c s dng lm tham s gi tr cho PS1, v th c gng gii hn
chnh bn dng nhc khng ln t thng tin.
Dy escape Miu t
\t Thi gian hin ti, din t dng HH:MM:SS
\d Ngy hin ti, din t dng Ngy trong tun Thng Ngy
7/23/2019 Ti Liu UNIX Ting Vit
30/161
http://vietjack.com/unix/index.jsp Copyright vietjack.com
http://vietjack.com/Trang chia scc bi hc online min ph Page 30
\n Dng mi
\s Mi trng Shell hin ti
\W Th mc lm vic
\w ng Path y ca th mc lm vic
\u Tn shu hin ti ca ngi s dng
\h Hostname ca thit b hin ti
\#S lng lnh ca lnh hin ti. Tng mi khi c mt lnh mi c
nhp
\$Nu UID hiu qu l 0 ( l, nu bn c ng nhp nh l root),
kt thc dng nhc vi k t #; nu khng th, s dng $.
Bn c th to s thay i bi chnh bn mi khi bn ng nhp vo, hoc bn c th c thay i
c to mt cch t ng trong PS1 bng cch thm n ti file .profile.
Khi bn thng bo mt lnh m cha hon thin, Shell s hin th mt dng nhc lnh th hai vi bn hon thin lnh v nhp li.
Dng nhc lnh mc nh th hai l k hiu ln hn >, nhng c th c thay i bng cch nh
ngha li bin PS2.
Di y l v d v cch s dng dng nhc lnh th hai:
$ echo "this is a
> test"
thisisa
test
$
Tip theo l v d m nh ngha li PS2 vi mt dng nhc c ty chnh theo ban:
7/23/2019 Ti Liu UNIX Ting Vit
31/161
http://vietjack.com/unix/index.jsp Copyright vietjack.com
http://vietjack.com/Trang chia scc bi hc online min ph Page 31
$ PS2="secondary prompt->"
$ echo "this is a
secondary prompt->test"
thisisa
test
$
Cc bin mi trng trong Unix/LinuxDi y l mt danh sch cc b ca cc bin mi trng quan trng. Nhng bin ny s c
thit lp v truy cp nh cp phn trn.
Bin Miu t
DISPLAYCha ng b nhn din cho s hin th m cc chng trnh X11 nn
s dng bi mc nh.
HOMECh dn th mc chnhca ngi s dng hin ti: tham s mc nh
cho lnh cd c sn.
IFSCh dn Internal Field Separator m c s dng bi s phn tch t
ang tch sau s m rng.
LANG
LANG m rng Locale h thng mc nh; LC_ALL c th c s
dng vit ln (cquyn u tin cao hn) iu ny. V d, nu gi
tr ca n l pt_BR, th sau ngn ng c thit lp l (Brazilian)
Portuguese v min a phng l Brazil.
LD_LIBRARY_PATH
Trn nhiu h thng Unix vi mt Dynamic Linker, cha mt danh sch
du hai chm ring r ca cc th mc m Dynamic Linker tm kim
cc i tng c chia s khi xy dng mt hnh nh tin trnh saukhi thc thi, trc khi tm kim bt k th mc khc.
PATHCh dn tm kim path cho cc lnh. N l mt danh sch du hai chm
ring r ca cc th mc m trong Shell tm kim cho cc lnh.
7/23/2019 Ti Liu UNIX Ting Vit
32/161
http://vietjack.com/unix/index.jsp Copyright vietjack.com
http://vietjack.com/Trang chia scc bi hc online min ph Page 32
PWD Ch dn th mc lm vic hin ti khi thit lp bi lnh cd.
RANDOMTo mt s nguyn ngu nhin gia 0 v 32767 mi khi n c nhc
n.
SHLVLLng gia bi mi khi bash c bt u. Bin ny hu dng khi xc
nh c hay khng lnh exit c sn kt thc mc hin ti.
TERM Lin quan kiu hin th.
TZLin quan min thi gian (time zone). N c th nhn cc gi tr nh
GMT, AST.
UIDM rng ID s dng dng s ca ngi s dng hin ti, khi to khi
Shell bt u.
Di y l v d minh ha mt vi bin mi trng:
$ echo $HOME
/root
]$ echo $DISPLAY
$ echo $TERM
xterm
$ echo $PATH
/usr/local/bin:/bin:/usr/bin:/home/amrood/bin:/usr/local/bin
$
Cc tin ch c bn: in, email trong Unixn chng ny, bn c mt vi nhn thc c bn v h thng Unix v mt s lnh c bn ca
n. Chng ny s s qua v mt s tin ch c bn nhng quan trng trong cc tin ch ca Unix
m bn s s dng chng trong hot ng thng nht.
In cc file trong Unix/Linux
7/23/2019 Ti Liu UNIX Ting Vit
33/161
http://vietjack.com/unix/index.jsp Copyright vietjack.com
http://vietjack.com/Trang chia scc bi hc online min ph Page 33
Trc khi bn in mt file trn h thng Unix, bn c th mun nh dng li n ty chnh cc l,
nh du mt vi t,. Hu ht cc file c th c in m khng cn nh dng li, nhng bn in
th nh vy thng trng khng c p cho lm.
Rt nhiu phin bn ca Unix bao gm hai trnh nh dng vn bn rt tin ch:nroffvtroff.Chng khng c tm hiu trong chng ny nhng bn c th tm hiu tin ch ca chng thng
qua mng.
Lnh pr trong Unix/LinuxLnhprphn nh qu trnh nh dng file trn mn hnh terminal hoc cho mt my in. V d, nu
bn c mt danh sch tn di ca mt file, bn c th nh dng n trn mn hnh vo hai hay
nhiu ct.
Di y l c php lnhpr:
pr option(s)filename(s)
Lnhprthay i nh dngca file ch trn mn hnh hoc trn bn in, n khng chnh sa file ban
u. Bng di y lit k mt vi ty chn ca lnh pr:
Chc nng Miu t
-k To ra k ct u ra.
-d Khong trng kp u ra (khng phi trn tt c phin bn pr).
-h "header" Lm cho mc mi tr thnh nh mt u ca bn bo co.
-t Kh l khi in u v cc l trn/di.
-l PAGE_LENGTH Thit lp di trang ti PAGE_LENGTH (66) dng. S t mc nhca cc dng l 56.
-o MARGIN In pxet mi dng vi khong cch l l 0.
-w PAGE_WIDTH Thit lp rng ti PAGE_WIDTH (72) k t ch cho u ra dng
7/23/2019 Ti Liu UNIX Ting Vit
34/161
http://vietjack.com/unix/index.jsp Copyright vietjack.com
http://vietjack.com/Trang chia scc bi hc online min ph Page 34
nhiu ct.
Trc khi s dngpr, di y l cc ni dung ca mt file mu: food.
$cat food
SweetTooth
BangkokWok
Mandalay
AfghaniCuisine
Isleof Java
BigAppleDeli
SushiandSashimi
TioPepe's Peppers........
$
By gi chng ta s dng lnhpr to mt bn bo co c 2 ct vi u l Restaurents:
$pr -2-h "Restaurants"food
Nov 7 9:581997 Restaurants Page1
SweetTooth Isleof Java
BangkokWok BigAppleDeli
Mandalay SushiandSashimi
AfghaniCuisine TioPepe's Peppers
........
$
Cc lnh Ip v Ipr trong Unix/Linux
LnhIphocIprin mt file trn giy t mn hnh hin th. Mt khi bn nh dng file s dnglnhprv sn sng in, bn c th s dng bt c lnh no trong 2 lnh ny in file ca bn
trn my in kt ni c vi my tnh ca bn.
Qun l h thng c th thit lp my in mc nh ti site ca bn. in mt file c tn l food
trn my in mc nh, bn s dng lnhlphoclprnh trong v d sau:
7/23/2019 Ti Liu UNIX Ting Vit
35/161
http://vietjack.com/unix/index.jsp Copyright vietjack.com
http://vietjack.com/Trang chia scc bi hc online min ph Page 35
$lp food
request id islaserp-525 (1file)
$
LnhIpch mt ID m bn c th s dng dng cng vic in hoc kim tra trng thi ca n.
Nu bn s dng lnh Ip, bn c th s dng chc nng -nNum in s lng bn sao l
Num. Cng vi lnh Ipr, bn c th s dng ty chn-Num thc hin vic tng t.
Nu c nhiu my in kt ni vi my tnh ca bn, th khi bn c th chn mt my in
bng cch s dng ty chn dprintervi lnhIp v s dng ty chn -Pprintervi lnh
Ipr cho mc ch tng t. Ti y, printer l tn my in.
Cc lnh Ipstat v Ipq trong Unix/LinuxLnh Ipstat ch nhng g trong hng my in: ID yu cu, c file, khi cc cng vic c gi chomc ch in, v cc trng thi ca cc yu cu.
S dngIpstat -onu bn mun quan st ton b cc yu cu u ra ch khng phi ch cc yu
cu ca ring bn.Cc yu cu c trnh by theo th t chng c in:
$lpstat -o
laserp-573 john 128865 Nov7 11:27 on laserp
laserp-574 grace 82744 Nov7 11:28
laserp-575 john 23347 Nov7 11:35
$
LnhIpqcung cp thng tin hi khc vi lnh Ipstat -o:
$lpq
laserp isready andprinting
Rank Owner Job Files TotalSize
active john 573 report.ps 128865bytes
1st grace 574 ch03.ps ch04.ps 82744bytes
2nd john 575 standard input 23347bytes
$
7/23/2019 Ti Liu UNIX Ting Vit
36/161
http://vietjack.com/unix/index.jsp Copyright vietjack.com
http://vietjack.com/Trang chia scc bi hc online min ph Page 36
y dng u tin hin th trng thi my in. Nu my in khng hot ng hoc ang ht giy,
bn c th quan st cc thng tin khc trn dng u tin.
Cc lnh cancel v Iprm trong Unix/LinuxLnhcancelkt thc yu cu in t lnh Ip. LnhIprmkt thc cc yu cu ca Ipr. Bn c th xc
nh hoc ID ca yu cu (hin th bi lnh Ip hoc Ipq) hoc tn ca my in.
$cancel laserp-575
request "laserp-575"cancelled
$
dng cc yu cu hin ti ang in, bt chp ID ca n, n gin bn nhn cancel v tn my
in:
$cancel laserp
request "laserp-573"cancelled
$
Lnh Iprm s dng cng vic ang thc hin nu lnh do bn ra. Nu khng th, bn c th
cung cp cc tn cng vic nh l tham s hoc s dng mt du gch ngang ( -) g b tt c
cng vic ca bn:
$lprm 575
dfA575diamond dequeued
cfA575diamond dequeued
$
Lnh Iprm ni cho bn v cc tn file thc s b d b t hng in.
Gi Email trong Unix/LinuxBn s dng lnhmail gi v nhn mail. Di y l c php gi mt Email:
$mail [-s subject][-c cc-addr][-b bcc-addr]to-addr
Bng di lit k cc chc nng quan trng lin quan n lnh mail:
Chc nng Miu t
7/23/2019 Ti Liu UNIX Ting Vit
37/161
http://vietjack.com/unix/index.jsp Copyright vietjack.com
http://vietjack.com/Trang chia scc bi hc online min ph Page 37
-s Xc nh subject trn dng lnh.
-cGi cc bn sao carbon ti danh sch ca cc ngi s dng. Danh
sch c th lmt bn danh sch tn phn bit bng du phy.
-bGi cc bn sao blind carbon ti danh sch. Danh sch c th l mt
bn danh sch tn phn bit bng du phy.
Di y l v d gi mt Test message ti a ch [email protected].
$mail -s "Test Message"[email protected]
Bn sau c mong i g vn bn vo thng bo ca bn, theo sau bi mt control -D ti
phn bt u ca mt dng. dng vic g vn bn ny, n gin bn g du chm (.) nh sau:
Hi,
Thisisa test
.
Cc:
Bn c th gi mt file y bng cch s dng mt ton t iu hng li < nh sau::
$mail -s "Report 05/06/07"[email protected]
7/23/2019 Ti Liu UNIX Ting Vit
38/161
http://vietjack.com/unix/index.jsp Copyright vietjack.com
http://vietjack.com/Trang chia scc bi hc online min ph Page 38
Lnh grep trong Unix/LinuxChng trnhgreptm mt file hoc cc file cho cc dng m c mt mu no . C php ca n
l:
$grep pattern file(s)
Tn grep bt ngun t lnh ed (UNIX line editor), g/re/p c ngha l globally search for a regular
expression and print all lines containing it (tm kim ton cu cho mt regular expression v in tt
c dng cha n)."
Mt regular expression l hoc mt vi on thun vn bn hoc cc k t c bit s dng cho
cc kt ni mu.
Cch s dng n gin nht ca grep l tm kim mt mu cha mt t n. N c th th cs dng trong mt pipe m ch trong nhng dng ny ca cc file u vo cha mt chui
cho c gi ti u ra tiu chun. Nu bn khng cung cp cho grep mt tn file c, n c
u vo tiu chun, y l cch m tt c cc filter lm vic.
$ls -l |grep "Aug"
-rw-rw-rw- 1john doc 11008Aug 614:10ch02
-rw-rw-rw- 1john doc 8515Aug 615:30ch07
-rw-rw-r-- 1john doc 2488Aug1510:51intro
-rw-rw-r-- 1carol doc 1605Aug2307:35macros
$
C cc chc nng khc nhau m bn c th s dng song song vi lnh grep:
Chc nng Miu t
-v In tt c cc dng m khng kt ni vi mu cho.
-n In cc dng kt ni v s dng ca n.
-l Ch in tn file vi cc dng kt ni.
-c Ch in s lng cc dng kt ni.
7/23/2019 Ti Liu UNIX Ting Vit
39/161
http://vietjack.com/unix/index.jsp Copyright vietjack.com
http://vietjack.com/Trang chia scc bi hc online min ph Page 39
-i Kt ni hoc vi ch hoa hoc ch thng.
By gi, chng ta s dng mt regular expression m ni cho lnh grep tm cc dng vi
carol, theo sau bi khng hoc nhiu k t khc c tm tt trong mt regular expression nh
l du sao *, sau theo sau bi Aug.
y chng ta ang s dng chc nng -i c s tm kim phn bit ch hoa vi ch thng:
$ls -l |grep -i "carol.*aug"
-rw-rw-r-- 1carol doc 1605Aug2307:35macros
$
Lnh sort trong Unix/LinuxLnhsortsp xp cc dng ca vn bn theo th t ch ci hoc th t s. V d bn di xp
hng cc dng trong mt food file.
$sort food
AfghaniCuisine
BangkokWok
BigAppleDeli
Isleof Java
Mandalay
SushiandSashimi
SweetTooth
TioPepe's Peppers
$
Lnhsort, theo mc nh, sp xp cc dng ca vn bn theo th t ch ci. C rt nhiu chc
nng m iu khin vic sp hng ny:
Chc nng Miu t
-n Sp xp theo th t s, b qua cc khong trng v cc tab.
-r Nghch o th t ca s sp xp.
7/23/2019 Ti Liu UNIX Ting Vit
40/161
http://vietjack.com/unix/index.jsp Copyright vietjack.com
http://vietjack.com/Trang chia scc bi hc online min ph Page 40
-f Sp xp ch hoa v ch thng cng vi nhau.
+x B qua cc x trng u tin khi sp xp.
C th c nhiu hn hai lnh c kt ni trong mtpipe. V d v pipe trn s dnggrep, chng
ta c th sp xp cc file theo cch khc l bng cch chnh sa theo th t kch c trong August.
Pipe sau cha cc lnh:ls, grep,v sort:
$ls -l |grep "Aug"|sort +4n
-rw-rw-r-- 1carol doc 1605Aug2307:35macros
-rw-rw-r-- 1john doc 2488Aug1510:51intro
-rw-rw-rw- 1john doc 8515Aug 615:30ch07
-rw-rw-rw- 1john doc 11008Aug 614:10ch02
$
Pipe ny sp xp tt c cc file trong th mc ca bn c chnh sa theo th t kch c trong
August v in chng ti mn hnh terminal. Chc nng +4n b qua 4 trng (cc trng m phn
bit bi khong trng), sau sp xp cc dng theo th t s.
Cc lnh pg v more trong Unix/Linux
Mt u ra di thng lm trn mn hnh, nhng nu bn chy vn bn thngqua morehocpgnh l mt filter th mn hnh hin th s dng sau mi khi mn hnh y vn
bn.
Chng ta gi s rng bn c mt danh sch th mc di. lm cho n d dng hn khi c danh
sch c sp xp ny, dn output thng qua lnhmorenh sau:
$ls -l |grep "Aug"|sort +4n|more
-rw-rw-r-- 1carol doc 1605Aug2307:35macros
-rw-rw-r-- 1john doc 2488Aug1510:51intro-rw-rw-rw- 1john doc 8515Aug 615:30ch07
-rw-rw-r-- 1john doc 14827Aug 912:40ch03
.
.
.
7/23/2019 Ti Liu UNIX Ting Vit
41/161
http://vietjack.com/unix/index.jsp Copyright vietjack.com
http://vietjack.com/Trang chia scc bi hc online min ph Page 41
-rw-rw-rw- 1john doc 16867Aug 615:56ch05
--More--(74%)
Mn hnh s c ph y bi cc vn bn cha trong cc dng c sp xp theo th t kch
c. Ti v trcui cng ca mn hnh, ti dng nhc lnh morebn c th g mt lnh di chuynqua phn vn bn c sp xp.
Khi bn lm vic vi mn hnh ny, bn c th s dng bt k lnh trong s cc lnh c lit k
trong chng trnh.
Qun l tin trnh trong UnixKhi bn chy mt chng trnh trn h thng Unix, h thng to mt mi trng c bit cho
chng trnh . Mi trng ny cha mi th cn thit cho h thng chy chng trnh nu nh
khng c chng trnh khc ang chy trn h thng.
Bt c khi no bn thng bo mt lnh trong Unix, n to hoc bt u mt tin trnh mi. Khi bn
c gng thc hin mt lnhls lit k ni dung th mc, bn bt u mt tin trnh. Mt tin
trnh, hiu theo cch n gin, l mt v d ca mt chng trnh ang chy.
H iu hnh theo di cc tin trnh thng qua mt ID c 5 k s m c bit nh l IDpidhoc
Process ID. Mi tin trnh trong h thng c mt pid duy nht.
Pid thng lp li bi v tt c cc s c th c s dng v pid k tip lp li. Ti bt k lcno, khng th c hai tin trnh vi hai pid ging nhau cng tn ti trong h thng bi v n l pid
m Unix s dng theo di mi tin trnh.
Bt u mt tin trnh trong Unix/LinuxKhi bn bt u mt tin trnh (chy mt lnh), c 2 cch bn chy n:
Foreground Process
Background Process
Tin trnh Foreground trong Unix/LinuxTheo mc nh, mi tin trnh m bn bt u chy l Foreground Process. N nhn input t bn
phm v gi output ti mn hnh.
7/23/2019 Ti Liu UNIX Ting Vit
42/161
http://vietjack.com/unix/index.jsp Copyright vietjack.com
http://vietjack.com/Trang chia scc bi hc online min ph Page 42
Bn c th quan st iu ny xy ra vi lnh ls. Nu bn mun lit k tt c cc file trong th mc
hin ti, bn c th s dng lnh sau:
$ls ch*.doc
N s hin th tt c file m tn bt u vi ch v kt thc vi .doc.
ch01-1.doc ch010.doc ch02.doc ch03-2.doc
ch04-1.doc ch040.doc ch05.doc ch06-2.doc
ch01-2.doc ch02-1.doc
Tin trnh chy trong Foreground, kt qu ca n c hng trc tip trn mn hnh ca ti v
nu lnh ls mun bt k u vo no, n i t bn phm.
Trong khi mt chng trnh ang chy trong Foreground v cnmt khong thi gian di, chng takhng th chy bt k lnh khc (bt u mt tin trnh khc) bi v dng nhc khng c sn ti khi
chng trnh ang chy kt thc tin trnh v thot ra.
Tin trnh Background trong Unix/LinuxBackground Process chy m khng c kt ni vi bn phm ca bn. Nu tin trnh
Background yu cu bt c u vo t bn phm, n i.
Li th ca chy mt chng trnh trong Background l bn c th chy cc lnh khc; bn khng
phi i ti khi n kt thc bt u mt tin trnh mi!
Cch n gin nht bt u mt tin trnh Background l thm du v (&) ti phn cui ca
lnh.
$ls ch*.doc &
iu ny cng hin th tt c cc file m tn bt u vi ch v kt thc vi .doc:
ch01-1.doc ch010.doc ch02.doc ch03-2.doc
ch04-1.doc ch040.doc ch05.doc ch06-2.doc
ch01-2.doc ch02-1.doc
Ti y, nu lnhlsmun bt k u vo no (m n khng), n tin vo trng thi dng ti khi
bn di chuyn n vo trong Foreground v cung cp cho n d liu t bn phm.
7/23/2019 Ti Liu UNIX Ting Vit
43/161
http://vietjack.com/unix/index.jsp Copyright vietjack.com
http://vietjack.com/Trang chia scc bi hc online min ph Page 43
Dng u tin cha cc thng tin v Background Process - s cng vic (job number) v Process
ID. Bn cn bit v Job number thao tc n gia Background v Foreground.
Nu bn nhn phm Enter by gi, bn nhn thy nh sau:
[1] + Done ls ch*.doc &
$
Dng u tin ni cho bn rng lnhlstrong Background Process hon thnh mt cch thnh
cng. Dng th hai l mt dng nhc cho mt lnh khc.
Lit k cc tin trnh ang chy trong Unix/LinuxN l d dng quan st cc tin trnh ca bn bng cch chy lnh ps(vit tt ca process
status) nh sau:
$ps
PID TTY TIME CMD
18358 ttyp3 00:00:00 sh
18361 ttyp3 00:01:31 abiword
18789 ttyp3 00:00:00 ps
Mt trong nhng flag c s dng cho ps l -f (vit tt ca full), m cung cp nhiu thng tin nh
v d di y:
$ps -f
UID PID PPID C STIME TTY TIME CMD
amrood 67383662010:23:03pts/60:00first_one
amrood 67393662010:22:54pts/60:00second_one
amrood 36623657008:10:53pts/60:00-ksh
amrood 68923662410:51:50pts/60:00ps -f
Di y l s miu t ca tt c cc file c hin th bi lnh ps -f.
Ct Miu t
UID ID ngi s dng m tin trnh ny thuc s hu (ngi chy n).
7/23/2019 Ti Liu UNIX Ting Vit
44/161
http://vietjack.com/unix/index.jsp Copyright vietjack.com
http://vietjack.com/Trang chia scc bi hc online min ph Page 44
PID Process ID.
PPID Process ID gc (ID ca tin trnh m bt u n).
C CPU s dng ca tin trnh.
STIME Thi gian bt u tin trnh.
TTY Kiu terminal lin kt vi tin trnh.
TIME Thi gian CPU b s dng bi tin trnh.
CMD Lnh m bt u tin trnh ny.
C nhng chc nng khc m c th c s dng song song vi lnh ps:
Chc nng Miu t
-a Ch thng tin v tt c ngi s dng.
-x Ch thng tin v cc tin trnh m khng c terminal.
-u Ch thng tin thm vo nh chc nng -f.
-e Hin th thng tin c m rng.
Dng tin trnh trong Unix/LinuxKt thc mt tin trnh c th c thc hin theo vi cch khc nhau. Thng thng, t mt lnh
console-based, gi CTRL + C bng g phm (mc nh l k t ngt) s hy lnh. N lm vic khi
tin trnh ang chy trong ch Foreground.
Nu mt tin trnh ang chy trong ch Background, th u tin bn cn nhn ID cng vic (job
ID) bng cch s dng lnh ps v sau bn c th s dng lnh kill kh tin trnh nh sau:
$ps -f
7/23/2019 Ti Liu UNIX Ting Vit
45/161
http://vietjack.com/unix/index.jsp Copyright vietjack.com
http://vietjack.com/Trang chia scc bi hc online min ph Page 45
UID PID PPID C STIME TTY TIME CMD
amrood 67383662010:23:03pts/60:00first_one
amrood 67393662010:22:54pts/60:00second_one
amrood 36623657008:10:53pts/60:00-ksh
amrood 68923662410:51:50pts/60:00ps -f
$kill 6738
Terminated
y lnh kill s kt thc tin trnh first_one. Nu mt tin trnh thng b qua mt lnh kill, bn
c th s dng kill -9 theo sau bi Process ID nh sau:
$kill -96738
Terminated
Tin trnh m v tin trnh con trong Unix/LinuxMi mt tin trnh Unix c hai ID c gn cho n: Process ID (pid) v Parent Process ID (ppid).
Mi tin trnh trong h thng c mt Parent Process (gc).
Hu ht cc lnh m bn chy c Shell nh l m ca n. Kim tra v d ps -f m ti y lnh ny
lit k c Process ID v Process ID gc.
Tin trnh Zombie v OrphanThng thng, khi mt tin trnh con b kh, Parent Process c thng bo thng qua k hiuSIGCHLD. Sau , tin trnh gc c th thc hin mt vi cng vic khc hoc bt u li tin trnh
con nu cn thit. Tuy nhin, i khi Parent Process b kh trc khi tin trnh con ca n b kh.
Trong trng hp ny, Parent Process ca tt c cc tin trnh, tin trnhinit, tr thnh PPID mi
(Process ID m). i khi nhng tin trnh ny c gi l tin trnh Orphan.
Khi mt tin trnh b kh, danh sch lit k ps c th vn ch tin trnh vi trng thi Z. y l trng
thi Zombie, hoc tin trnh khng tn ti. Tin trnh ny b kh v khng c s dng. Nhng
tin trnh ny khc vi tin trnh orphan. N l nhng tin trnh m chy hon thnh nhng vnc mt cng vo trong bng tin trnh.
Tin trnh Daemon trong Unix/LinuxDaemonl cc Background Process lin quan ti h thng m thng chy vi quyn hn truy
cp ca root v cc dch v yu cu t tin trnh khc.
7/23/2019 Ti Liu UNIX Ting Vit
46/161
http://vietjack.com/unix/index.jsp Copyright vietjack.com
http://vietjack.com/Trang chia scc bi hc online min ph Page 46
Mt tin trnh deamon khng c terminal iu khin. N khng th m /dev/tty. Nu bn thc hin
mtps-efv quan st vo trng tty, tt c deamon s c mt du ? cho tty.
r hn, mt deamon ch l mt tin trnh m chy trong Background, thng i cho ci g
xy ra m n c kh nng lmvic vi, ging nh my in deamon ang i cc lnh in.
Nu bn c mt chng trnh m cn thc hin mt tin trnh di, th sau gi tr ca n to
mt deamon v chy n trong Background.
Lnh top trong Unix/LinuxLnhtopl mt cng c rt hu chcho vic hin th nhanh cc tin trnh c sp xp bi cc
tiu chun a dng.
N l mt cng c chn on tng tc m cp nht thng xuyn v hin th thng tin v b nhvt l v b nh o, s s dng CPU, .
Di y l c php n gin chy lnh top v quan st kt qu thng k ca s s dng CPU
bng cc tin trnh khc nhau:
$top
Job ID vi Process ID trong Unix/Linux
Tin trnh Background v Foreground thng c thao tc thng qua Job ID. S ny khc viProcess ID v c s dng bi v nngn hn.
Ngoi ra, mt cng vic c th bao gm nhiu tin trnh ang chy trong seri hoc ti cng mt thi
gian, song song, v th s dng Job ID l d dng hn theo di cc tin trnh ring l.
Cc tin ch giao tip mng trong UnixKhi bn lm vic trong mi trng phn phi th khi bn cn giao tip vi nhng ngi s dng
t xa v bn cng cn truy cp vo cc thit b Unix t xa.
C mt vi tin ch Unix m c bit hu ch cho ngi s dng giao tip trong mt mi trng
phn phi, kt ni mng. Chng ny lit k vi tin ch trong s chng.
Tin ch ping trong Unix/Linux
7/23/2019 Ti Liu UNIX Ting Vit
47/161
http://vietjack.com/unix/index.jsp Copyright vietjack.com
http://vietjack.com/Trang chia scc bi hc online min ph Page 47
Lnhpinggi mt yu cu echo ti mt host c sn trn mng. S dng lnh ny bn c th kim
tra nu host t xa ca bn ang phn hi tt hoc khng.
Lnh ping hu ch v:
Theo di v phn tch tnh n lp phn cng v cc vn v phn mm.
Xc nh trng thi ca mng v cc host ngoi a dng khc.
Kim tra, nh gi v qun l mng.
C php trong Unix/LinuxSau y l c php n gin s dng lnhping:
$ping hostname hoc ip-address
Lnh trn s bt u in mt phn hi sau mi giy. thot khi lnh ny bn c th kt thc n
bng cch nhn t hp phm CTRL + C.
V d trong Unix/Linux:Di y l v d kim tra tnh sn sng ca mt host c trn mng:
$ping google.com
PING google.com (74.125.67.100)56(84)bytes of data.
64bytes from74.125.67.100:icmp_seq=1ttl=54time=39.4ms
64bytes from74.125.67.100:icmp_seq=2ttl=54time=39.9ms
64bytes from74.125.67.100:icmp_seq=3ttl=54time=39.3ms
64bytes from74.125.67.100:icmp_seq=4ttl=54time=39.1ms
64bytes from74.125.67.100:icmp_seq=5ttl=54time=38.8ms
---google.com ping statistics ---
22packets transmitted,22received,0%packet loss,time 21017ms
rtt min/avg/max/mdev =38.867/39.334/39.900/0.396ms
$
Nu mt host khng tn ti th khi n s chy mt ci g ging nh sau:
$ping giiiiiigle.com
ping:unknown host giiiiigle.com
7/23/2019 Ti Liu UNIX Ting Vit
48/161
http://vietjack.com/unix/index.jsp Copyright vietjack.com
http://vietjack.com/Trang chia scc bi hc online min ph Page 48
$
Tin ch ftp trong Unix/Linux yftpl vit tt caFile Transfer Protocol. Tin ch ny gip bn ti ln v tiv (upload v
download) file ca bn t mt my tnh sang mt my tnh khc.
Tin ch ftp c b thit lp ring ca n trong Unix nh cc lnh m cho php bn thc hin cc
cng vic nh:
Kt ni v ng nhp ti mt host t xa.
iu hng cc th mc;
Lit k ni dung th mc;
t v nhn cc file;
Truyn ti cc file dng ASCII, EBCDIC hoc nh phn.
C php trong Unix/LinuxDi y l c php n gin s dng lnhftp:
$ftp hostname hoc ip-address
Lnh trn s nhc bn nhp ID ng nhp v mt khu. Mt khi bn xc nhn xong, bn c th
truy cp trn th mc chnh ca ti khon ng nhp v bn c th thc hin cc lnh khc nhau.
Mt s lnh hu ch c lit k sau y:
Lnh Miu t
put filename Ti mt filename ln t thit b ni b ln thit b t xa
get filename Ti mt filename xung t thit b t xa xung thit b ni b
mput file list Ti nhiu hn mt file t thit b ni b ln thit b t xa.
7/23/2019 Ti Liu UNIX Ting Vit
49/161
http://vietjack.com/unix/index.jsp Copyright vietjack.com
http://vietjack.com/Trang chia scc bi hc online min ph Page 49
mget file list Ti xung nhiu hn mt file t thit b t xa xung thit b ni b.
prompt offTt dng nhc lnh, theo mc nh bn s c nhc ti ln hoc ti
xung cc movie bng cch s dng lnh mput hoc mget.
prompt on Bt dng lnh nhc.
dir Lit k tt c cc file c trong th mc hin ti ca thit b t xa.
cd dirname Thay i th mc ti dirname trn thit b t xa.
lcd dirname Thay i th mc ti dirname trn thit b ni b.
quit Thot ra t s ng nhp hin ti .
N nn c ghi ch rng cc file s c download hoc upload ti hoc t cc th mc hin ti.
Nu bn mun upload cc file ca bn trong mt th mc ring bit th khi u tin bn thay i
ti th mc v sau ti file c yu cu ln.
V d trong Unix/Linux:Di y l v d minh ha v mt s lnh:
$ftp amrood.com
Connectedto amrood.com.
220amrood.com FTP server (Ver4.9ThuSep220:35:07CDT 2009)
Name(amrood.com:amrood):amrood
331Passwordrequired foramrood.
Password:
230Useramrood logged in.
ftp>dir
200PORT command successful.
150Openingdata connection for/bin/ls.
total 1464
drwxr-sr-x 3amrood group 1024Mar1120:04Mail
drwxr-sr-x 2amrood group 1536Mar 318:07Misc
7/23/2019 Ti Liu UNIX Ting Vit
50/161
http://vietjack.com/unix/index.jsp Copyright vietjack.com
http://vietjack.com/Trang chia scc bi hc online min ph Page 50
drwxr-sr-x 5amrood group 512Dec 710:59OldStuff
drwxr-sr-x 2amrood group 1024Mar1115:24bin
drwxr-sr-x 5amrood group 3072Mar1316:10mpl
-rw-r--r-- 1amrood group 209671Mar1510:57myfile.out
drwxr-sr-x 3amrood group 512Jan 513:32public
drwxr-sr-x 3amrood group 512Feb1010:17pvm3
226Transfercomplete.
ftp>cd mpl
250CWD command successful.
ftp>dir
200PORT command successful.
150Openingdata connection for/bin/ls.
total 7320
-rw-r--r-- 1amrood group 1630Aug 81994 dboard.f
-rw-r----- 1amrood group 4340Jul171994 vttest.c
-rwxr-xr-x 1amrood group 525574Feb1511:52wave_shift
-rw-r--r-- 1amrood group 1648Aug 51994 wide.list
-rwxr-xr-x 1amrood group 4019Feb1416:26fix.c
226Transfercomplete.
ftp>getwave_shift200PORT command successful.
150Openingdata connection forwave_shift (525574bytes).
226Transfercomplete.
528454bytes received in1.296seconds (398.1Kbytes/s)
ftp>quit
221Goodbye.
$
Tin ch telnet trong Unix/LinuxNhiu khi bn s cn kt ni ti mt thit b Unix t xa v lm vic trn thit b vi ch iu
khin t xa. Telnet l mt tin ch m cho php mt ngi s dng my tnh ti mt site to mt s
kt ni, ng nhp v sau thc hin cng vic trn my tnh ti mt site khc.
7/23/2019 Ti Liu UNIX Ting Vit
51/161
http://vietjack.com/unix/index.jsp Copyright vietjack.com
http://vietjack.com/Trang chia scc bi hc online min ph Page 51
Mt khi bn ng nhp bng cch s dngtelnet, bn c th thc hin tt c cc hot ng trn
thit b kt ni t xa. Di y l v d v telnet:
C:>telnet amrood.com
Trying...
Connectedto amrood.com.
Escapecharacter is'^]'.
login:amrood
amrood's Password:
*****************************************************
* *
* *
* WELCOME TO AMROOD.COM *
* *
* *
*****************************************************
Last unsuccessful login: Fri Mar 3 12:01:09 IST 2009
Last login: Wed Mar 8 18:33:27 IST 2009 on pts/10
{ do your work }
$ logout
Connection closed.
C:>
Tin ch finger trong Unix/LinuxLnhfingerhin th thng tin v nhng ngi s dng trn mt host cho. Host c th l ni b
hoc t xa.
Finger c th bt lc trn h thng khc v l do bo mt.
Di y l c php n gin s dng lnhfinger:
7/23/2019 Ti Liu UNIX Ting Vit
52/161
http://vietjack.com/unix/index.jsp Copyright vietjack.com
http://vietjack.com/Trang chia scc bi hc online min ph Page 52
Kim tra tt c cc ngi s dng ng nhp trn thit b ni b nh sau:
$ finger
Login Name Tty Idle LoginTime Office
amrood pts/0 Jun2508:03(62.61.164.115)
Nhn thng tin v mt ngi s dng ring bit c trn thit b ni b:
$ finger amrood
Login:amrood Name:(null)
Directory:/home/amrood Shell:/bin/bash
Onsince ThuJun2508:03(MST)on pts/0from62.61.164.115
Nomail.
NoPlan.
Kim tra tt c ngi sdng ng nhp trn thit b t xa nh sau:
$ finger @avtar.com
Login Name Tty Idle LoginTime Office
amrood pts/0 Jun2508:03(62.61.164.115)
Nhn thng tin v mt ngi s dng ring bit c trn thit b t xa nh sau:
$ finger [email protected]
Login:amrood Name:(null)
Directory:/home/amrood Shell:/bin/bash
Onsince ThuJun2508:03(MST)on pts/0from62.61.164.115
Nomail.
NoPlan.
Trnh son tho vi trong UnixC rt nhiu cch chnh sa cc file trong Unix v i vi ti, mt trong nhng cch tt nht ls dng B (Trnh) son tho hng mn hnhvi. B son tho ny cho bn c th chnh sa cc
dng trong ni dung vi cc dng khc trong file.
Ngy nay bns tm thy mt phin bn c nng cp ca B son tho vi m c gi lVIM.
VIM l vit tt caVi Improved.
7/23/2019 Ti Liu UNIX Ting Vit
53/161
http://vietjack.com/unix/index.jsp Copyright vietjack.com
http://vietjack.com/Trang chia scc bi hc online min ph Page 53
B son tho vi thng c cn nhc l tiu chun thc quyn trong B son tho Unix bi v:
N thng c sn trn tt c cc phin bn ca hthng Unix;
Trnh thc hin ca n tng t nh bng;
N yu cu rt t ngun cho n;
N thn thin hn cc B son tho khc nh ed hoc ex.
Bn c th s dng B son tho vi chnh sa mt file ang hin hu hoc to mt file mi t
scratch. Bn cngc th s dng B son tho ny ch c mt file vn bn.
Bt u chy B son tho vi trong Unix/LinuxC nhng cch sau m bn c th s dng bt u chy B son tho vi:
Lnh Miu t
vi filenameTo mt file mi nu n khng tn ti, nu khng th m mt file
ang tn ti.
vi -R filename M mt file ang tn ti trong ch ch c.
view filename M mt file ang tn ti trong ch ch c.
Di y l v d to mt file mi testfilenu n khng tn ti trong th mc lm vic hin
ti:
$vi testfile
Bn c th quan st kt qu ging nh sau trn mn hnh:
|
~
~
~
~
~
7/23/2019 Ti Liu UNIX Ting Vit
54/161
http://vietjack.com/unix/index.jsp Copyright vietjack.com
http://vietjack.com/Trang chia scc bi hc online min ph Page 54
~
~
~
~
~
~
~
"testfile"[NewFile]
Bn s ch mt du ng (~) trn mi dng con tr. Du ng ny i din cho mt dng cha
c s dng. Nu mt dng khng btu vi du ng v xut hin khong trng, c th l mt
khong trng, tab, dng mi hoc mt vi k t khng nhn thy.
V th by gi bn m mt file bt u n. Trc khi thc hin cc tin trnh xa hn, chng
ta cng tm hiu mt vi khi nim quan trng c gii thch bn di.
Cc ch hot ng trong Unix/Linux:Trong khi lm vic vi b son vi, bn s tnh c theo hai ch sau:
1. Ch lnh (Command mode):Ch ny cho bn c th thc hin cc nhim v hnh
chnh nh lu file, chy lnh, di chuyn con tr, ct v dn cc dng hoc t, v tm kim
v i v tr. Trong ch ny, bt c ci g bn g vo c h thng bin dch (hiu) nhmt lnh.
2. Ch chn (Insert mode):Ch ny cho bn c th chn vn bn vo trong file. Mi
th m c g vo trong ch ny c h thng hiu nh l mt u vo v cui cng
n t vo trong file.
B son thovithng bt u vi ch lnh. nhp vn bn, bn phi trong ch chn.
vo ch chn, n gin bn ch cn gi. thot khi ch chn, nhn phmEsc, m s t
bn quay tr li ch lnh.
Gi :Nu bn khng chc chn v ch m bn ang trong, nhn phm Esc hai ln, v sau
bn s trong ch lnh. Bn m mt file bng cch s dng B son tho vi v bt u g
mt vi k t, sau bn vo ch lnh thy s khc nhau.
Thot khi vi trong Unix/Linux
7/23/2019 Ti Liu UNIX Ting Vit
55/161
7/23/2019 Ti Liu UNIX Ting Vit
56/161
http://vietjack.com/unix/index.jsp Copyright vietjack.com
http://vietjack.com/Trang chia scc bi hc online min ph Page 56
Hu ht cc lnh trong vi c th c m u bng s ln bn mun hnh ng xy ra. V
d,2jl di chuyn con tr xung 2 dng.
C nhiu cch khc di chuyn trong mt file trong vi. Nh rng bn phi trong ch lnh (nhn
Esc hai ln). Di y l mt bng lit k cc lnh khc m bn c th s dng di chuyn xungquanh file:
Lnh Miu t
0 or | t v tr con tr ti u dng.
$ t v tr con tr cui dng.
w t v tr con tr t tip theo.
b t v tr con tr t trc.
( t v tr con tr u cu vn hin ti.
) t v tr con tr u cu vn k tip.
E Di chuyn ti phn cui ca t c gii hn khong trng.
{ Di chuyn ti on vn sau.
} Di chuyn v on vn trc.
[[ Di chuyn ti khu vc sau.
]] Di chuyn v khu vc trc.
n| Di chuyn ti ctntrong dng hin ti.
1G Di chuyn ti dng u tin ca file.
7/23/2019 Ti Liu UNIX Ting Vit
57/161
http://vietjack.com/unix/index.jsp Copyright vietjack.com
http://vietjack.com/Trang chia scc bi hc online min ph Page 57
G Di chuyn ti dng cui cng ca file.
nG Di chuyn ti dng thnca file.
:n Di chuyn ti dng thnca file.
fc Di chuyn thun tin tic
Fc Di chuyn ngc li tic
H Di chuyn ti u ca mn hnh.
nH Di chuyn ti dng thntnh t u ca mn hnh.
M Di chuyn ti gia mn hnh.
L Di chuyn ti cui cng mn hnh.
nL Di chuyn ti dng thntnh t cui cng ca mn hnh.
:x Du hai chm theo sau bi mt s s t v tr ca con tr trn dngsx
Cc lnh iu khin trong Unix/LinuxCc lnh di y hu dng m bn c th s dng song song vi phm control:
Lnh Miu t
CTRL+d Di chuyn tin ti 1/2 mn hnh.
CTRL+d Di chuyn tin ti 1/2 mn hnh.
CTRL+f Di chuyn tin ti mt mn hnh y .
7/23/2019 Ti Liu UNIX Ting Vit
58/161
http://vietjack.com/unix/index.jsp Copyright vietjack.com
http://vietjack.com/Trang chia scc bi hc online min ph Page 58
CTRL+u Di chuyn ngc v sau 1/2 mn hnh.
CTRL+b Di chuyn ngc v sau mt mn hnh.
CTRL+e Di chuyn mn hnh ln mt dng.
CTRL+y Di chyn mn hnh xung mt dng.
CTRL+u Di chuyn mn hnh ln 1/2 trang.
CTRL+d Di chuyn mn hnh xung 1/2 trang.
CTRL+b Di chuyn mn hnh ln mt trang.
CTRL+f Di chuyn mn hnh xung mt trang.
CTRL+I Ko mn hnh ngc li.
Chnh sa file trong Unix/Linux chnh sa file, bn cn trong ch chn. C nhiu cch vo ch chn t ch lnh.
Lnh Miu t
i Chn vn bn trc v tr con tr hin ti.
I Chn vn bn phn u dng hin ti.
a Chn vn bn sau v tr con tr hin ti.
A Chn vn bn ti phn cui ca dng hin ti.
o To mt dng mi nhp vn bn di v tr con tr hin ti.
O To mt dng mi nhp vn bn trn v tr con tr hin ti.
7/23/2019 Ti Liu UNIX Ting Vit
59/161
http://vietjack.com/unix/index.jsp Copyright vietjack.com
http://vietjack.com/Trang chia scc bi hc online min ph Page 59
Xa cc k t trong Unix/LinuxDi y lit k cc lnh quan trng m c th c s dng xa cc k t v cc dng trong
mt file m:
Lnh Miu t
x Xa mt k t di v tr con tr hin ti.
X Xa mt k t trc v tr con tr hin ti.
dw Xa t v tr con tr hin ti ti t k tip.
d^ Xa t v tr con tr hin ti ti phn bt u ca dng.
d$ Xa t v tr con tr hin ti ti phn cui ca dng.
D Xa t v tr con tr hin ti ti phn cui ca dng hin ti.
dd Xa dng m con tr hin ti ang trn.
Nh cp trn, hu ht cc lnh trong vi c th c t trc bi s ln bn mun hnhng xy ra. V d,2xs xa 2 k t di v tr con tr hin ti v 2dd s xa 2 dng m con tr
ang trn hin ti.
Chng ti ngh bn thc hnh cc lnh trn nhiu ln trc khi thc hin cc tin trnh phc tp
hn.
Cc lnh thay i trong Unix/LinuxBn cng c kh nng thay i cc k t, cc t,, hoc dng trong vi m khng cn xa chng.
Di y l cc lnh lin quan:
Lnh Miu t
cc G b ni dung ca dng, lm cho bn ri khi ch chn.
7/23/2019 Ti Liu UNIX Ting Vit
60/161
http://vietjack.com/unix/index.jsp Copyright vietjack.com
http://vietjack.com/Trang chia scc bi hc online min ph Page 60
cwThay i t m con tr ang ti , t v tr con tr ti v tr ch w thng
cui cng ca t.
ri v tr ca k t di v tr con tr. Vi tr li ch lnh sau khi s i v tr
ny c thc hin xong.
RVit nhiu k t btu vi k t hin ti di con tr. Bn phi s dng
phm Esc dng vic vit ny.
si v tr ca k t hin ti vi k t m bn g vo. Sau , bn b ri khi ch
chn.
S Xa dng m con tr ang trn v thay i bng mt on vn bn mi. Saukhi vn bn mi c nhp, vi vn gi nguyn ch chn.
Cc lnh sao chp v dn trong Unix/LinuxBn c th sao chp cc dng hoc cc t t mt v tr v sau bn dn chng ti v tr khc
bng cch s dng cc lnh sau:
Lnh Miu t
yy Sao chp dng hin ti.
ywSao chp t hin ti t k t ch thng w con tr trn ti phn cui
ca t.
p Dn bn sao sau v tr con tr.
P Dn bn sao trc v tr con tr.
Cc lnh nng cao trong Unix/LinuxDi y lit k mt s lnh nng cao m lm n gin ha vic chnh sa thng ngy v mang
li nhiu hiu qu hn trong vic s dng vi:
7/23/2019 Ti Liu UNIX Ting Vit
61/161
http://vietjack.com/unix/index.jsp Copyright vietjack.com
http://vietjack.com/Trang chia scc bi hc online min ph Page 61
Lnh Miu t
J Nhp dng hin ti vi dng k tip.
Di chuyn dng hin ti sang phi mt rngshift.
~ Chuyn kiu ca k t di v tr con tr (VD: ch hoa thnh ch thng ).
^G Nhn Ctrl+G cng mt lc ch trng thi v tn file hin ti.
U Hi phc dng hin ti tr v trng thi trc khi con tr vo dng .
uUndo cc thay i va thc hin vi file. Nhp u ln na s redo s thay
i.
J Nhp dng hin ti vi dng k tip.
:f Hin th v tr hin ti ca file trong % v tn file, tng s file.
:f filename t li tn hin ti ca file.
:w filename Vit tn file
:e filename M mt file khc vi tn ca n.
:cd dirname Thay i th mc lm vic hin ti ti th mc dirname.
:e # S dng chuyn i gia hai file m.
:nTrong trng hp bn m nhiu file s dng vi, bn s dng :n ti file
k tip trong seri cc file .
7/23/2019 Ti Liu UNIX Ting Vit
62/161
http://vietjack.com/unix/index.jsp Copyright vietjack.com
http://vietjack.com/Trang chia scc bi hc online min ph Page 62
:pTrong trng hp bn m nhiu file s dng vi, bn s dng :p ti file
pha trc trong seri file .
:NTrong trng hp bn m nhiu file s dng vi, bn s dng :N ti file
pha trc trong seri file .
:r file c file v chn n sau dnghin ti.
:nr file c file v chn n sau dng th n.
Tm kim t v k t trong Unix/LinuxB son tho vi c hai loi tm kim: chui v k t. tm kim chui, lnh / v ? c s dng.
Khi bn bt u nhng lnh ny, lnh va c nhp vo s c ch cui cng ca dng, ti
bn nhp mt chui c th m bn mun tm tm kim n.
Hai lnh ny ch khc nhau phng din ni m n din ra:
Lnh / tm kim theo chiu thun v pha trc trong mt file.
Lnh ? tm kim theo chiu ngc li v pha sau trong mt file.
Cc lnh n v N tng ng lp li lnh tm trc theo cng cch tm hoc theo hng ngc li.
Mt vi k t c ngha quan trng trong khi s dng lnh tm kim v c t trc bi mt du
\ tr thnh mt phn ca biu thc cn tm.
K t Miu t
^Tm ti u ca dng. (S dng ti phn bt u ca mt biu thc tm
kim.)
. Kt ni vi mt k t n.
* Kt ni vi 0 hoc nhiu k t trc.
$ Cui ca dng. (s dng ti phn cui ca biu thc tm kim.)
7/23/2019 Ti Liu UNIX Ting Vit
63/161
http://vietjack.com/unix/index.jsp Copyright vietjack.com
http://vietjack.com/Trang chia scc bi hc online min ph Page 63
[ Bt u mt thit lp ca biu thc kt ni hoc khng kt ni.
t biu thc tm kim tch khi du cho ngc \ tm phn cui hoc
phn u ca t.
Hot ng tm kim k t tm kim trong mt dng tm mt k t c nhp sau lnh. Lnh f v
F ch tm kim cho mt k t trn dng hin ti. Lnh f tm kim thun v pha trc v F tm kim
ngc v pha sau v con tr di chuyn ti v tr ca k t c tm thy.
Lnh tv T ch tm kim mt k t trn dng hin ti, nhng vi t, con tr di chuyn ti v tr trc
k t, v T tm kim dng v pha ngc li ti v tr sau k t.
Cc lnh set trong Unix/LinuxBn c th to thay i mn hnh hin th ca vi bng cch s dng lnh :set. s dng nhng
lnh ny, bn phi vo ch lnh sau g:settheo sau bi mt trong cc chc nng sau:
Lnh Miu t
:set ic B qua kiu ch (ch hoa, thng) khi tm kim.
:set ai Thit lp ch tht vo u dng t ng.
:set noai khng t ch tht vo u dng t ng.
:set nu Hin th cc dng vi s dng trn cnh tri.
:set sw Thit lp rng ca im dng tab ca mt phn mm. V d bn c th thitlp mt rng shift l 4 vi lnh ny :set sw=4
:set wsNuwrapscanc thit lp, nu t khng c tm thy ti phn cui cng
ca file, n s c gng tm kim ti phn bt u.
7/23/2019 Ti Liu UNIX Ting Vit
64/161
http://vietjack.com/unix/index.jsp Copyright vietjack.com
http://vietjack.com/Trang chia scc bi hc online min ph Page 64
:set wm
Nu chc nng ny c mt gi tr ln hn 0, B son tho s t ng bao l k
t (word wrap). V d, thit lp l bao ti hai k t, bn s g th ny :set
wm=2
:set ro Thay i kiu file thnh ch c (read only)
:set term In kiu terminal.
:set bf B qua vic iu khin k t t u vo.
Chy cc lnh trong Unix/LinuxB son tho vi c kh nng chy cc lnh t trong B son tho. chy mt lnh, bn ch cn
tin vo ch lnh v nhp lnh:!.
V d, nu bn mun kim tra mt file c tn ti khng trc khi bn c gng lu file vi tn
cho, bn c th nhp:! lsv bn s thy kt qu ca lnh ls trn mn hnh.
Khi bn nhn bt k phm no, bn c quay tr li khu vc vi ca bn.
Thay th vn bn trong Unix/LinuxLnh thay th (:s/) cho bn c th nhanh chng i cc t hoc nhm t trong file ca bn. Di
y l c php n gin:
:s/search/replace/g
K tg i din cho ton cu (globally). Kt qu ca lnh ny l tt c cc s kin din ra trn
dng m con tr ti c thay i.
Cc im quan trng trong Unix/Linux:Di y l cc im quan trng gip bn thnh cng khi s dng vi:
Bn phi trong ch lnh s dng cc lnh. (Nhn phm Esc hai ln vo bt c lc no
m bo bn trong ch lnh).
Bn phi cn thn s dng cc kiu ch (hoa v thng) cho tt c cc lnh.
Bn phi trong ch chn nhp vn bn.
7/23/2019 Ti Liu UNIX Ting Vit
65/161
http://vietjack.com/unix/index.jsp Copyright vietjack.com
http://vietjack.com/Trang chia scc bi hc online min ph Page 65
Shell l g?Shell cung cp cho bn mt giao din vi h thng Unix. N thu thp input t bn v chy cc
chng trnh trn c s u vo . Khi mt chng trnh hon thnh, n hin th kt qu (output)
ca chng trnh .
Mt Shell l mt mi trng trong chng ta c th chy cc lnh, cc chng trnh v Shell
script. C cc phin bn khc nhau ca Shell, m ch khc nhau t phin bn ca h iu hnh.
Mi phin bn ca Shell c b thit lp cc lnh v hm c tha nhn ring ca n.
Dng nhc lnh Shell trong Unix/LinuxDng nhc lnh, $, c thng bo bi Shell. Trong khi dng nhc c hin th, bn c th nhp
mt lnh.
Shell c u vo bn nhp sau khi bn nhn Enter. N xc nh lnh m bn mun chy bi nhn
vo t u tin trong phn nhp ca bn. Mt t l mt tp hp khng gin on ca cc k t.
Cc khong trng v tab phn cch cc t.
Di y l mt v d n gin ca lnhdatem hin th ngy v thi gian hin ti:
$date
ThuJun2508:30:19MST 2009
Bn c th ty chnh dng nhc lnh ca mnh bng cch s dng bin mi trng PS1 c gii
thch trong chng Mi trng lm vic.
Cc kiu Shell trong Unix/LinuxTrong Unix c hai kiu Shell chnh:
1. Kiu Bourne Shell. Nu bn ang s dng mt Bourne Shell, dng nhc lnh mc nh l k
t $.
2. Kiu C Shell. Nubn ang s dng kiu C Shell, dng nhc mc nh l k t %.
Trong kiu Bourne Shell li c cc kiu ph khc nh sau:
Bourne Shell (sh)
Korn Shell (ksh)
7/23/2019 Ti Liu UNIX Ting Vit
66/161
http://vietjack.com/unix/index.jsp Copyright vietjack.com
http://vietjack.com/Trang chia scc bi hc online min ph Page 66
Bourne Again Shell ( bash)
POSIX Shell ( sh)
Trong kiu C Shell c cc kiu ph khc:
C Shell (csh)
TENEX/TOPS C Shell ( tcsh)
Cc Unix Shell u tin c vit vo gia thp k 1970 bi Stephen R. Bourne trong khi ng ta
ang lm vic ti phng th nghim AT&T Bell Labs New Jersey.
Bourne Shell l Shell u tin xut hin trn h thng Unix, v th n c cp n nh l the
Shell.
Bourne Shell thng c ci t nh l /bin/sh trn hu ht cc phin bn Unix. V l do ny, n
l Shell c chn vit script d dng trn cc phin bn khc nhau ca Unix.
Trong chng ny, chng ta cp n hu ht cc khi nim Shell trn c s Bourne Shell.
Shell Scripts trong Unix/LinuxKhi nim c bn ca mt Shell script l mt danh sch cc lnh, m c lit k theo th t thi
hnh. Mt Shell script tt s c cc li bnh (comment), ng trc bi du #, miu t cc bc.
C cc kim tra iu kin, nh gi tr A ln hn gi tr B, cc loop cho php chng ta x l mt
lng ln d liu, cc file c v lu gi d liu v cc bin c v lu gi liu, v script c
th bao gm cc hm.
Shell script v cc hm u c thng dch. iu ny c ngha l chng khng c bin dch.
Chng ta chun b vit nhiu script trong cc phn hng dn tip theo. N c th l mt file vn
bn n gin trong chng ta t tt c cc lnh v mt s cu trc cn thitm ni cho mi
trng Shell v ci g c lm v khi no c thc hin.
V d v script trong Unix/LinuxGi s chng ta to mt test.sh. Ghi nh rng tt c cc script nn c ui m rng.sh. Trc khi
bn thm bt k ci g ti script ca bn, bn cn bo h thng rng mt Shell script chun b c
bt u. Vic ny c thc hin bng cch s dng cu trc shebang. V d:
7/23/2019 Ti Liu UNIX Ting Vit
67/161
http://vietjack.com/unix/index.jsp Copyright vietjack.com
http://vietjack.com/Trang chia scc bi hc online min ph Page 67
#!/bin/sh
Lnh ny ni cho h thng rng cc lnh theo sau c chy bi Bourne Shell.N c gi l mt
shebang bi v k hiu # c gi l mt hash v k hiu ! c gi l mt bang.
to mt script cha cc lnh ny, u tin bn t dng shebang v sau thm cc lnh:
#!/bin/bash
pwd
ls
Cc li bnh Shell trong Unix/LinuxBn c th t cc Shell Comment trong script nh sau:
#!/bin/bash
# Author : Zara Ali
# Copyright (c) Tutorialspoint.com
# Script follows here:
pwd
ls
By gi bn lu ni dung trn v lm cho script ny chy nh sau:
$chmod +x test.sh
By gi bn c mt Shell script ca mnh sn sng chy nh sau:
$./test.sh
iu ny to ra kt qu sau:
/home/amrood
index.jsp unix-basic_utilities.jsp unix-directories.jsp
test.sh unix-communication.jsp unix-environment.jsp
Ghi ch: chy bt c chng trnh no ca bn c trong th mc hin ti, bn nn chybng
cch s dng./program_name
7/23/2019 Ti Liu UNIX Ting Vit
68/161
http://vietjack.com/unix/index.jsp Copyright vietjack.com
http://vietjack.com/Trang chia scc bi hc online min ph Page 68
Shell script m rng trong Unix/LinuxShell script c mt vi cu trc c yu cu m ni cho mi trng Shell v iu g lm v khi
no thc hin n. Tt nhin, hu ht script y phc tp hn nhng script gii thiu trn.
Shell l mt ngn ng chng trnh thc s, y vi cc bin, cc cu trc iu khin v . D
n c phc tp bao nhiu, th tuy nhin, n vn ch l mt danh sch lnh c thc thi mt cch
lin tc.
Cc script sau s dng lnhreadm nhn u vo t bn phm v gn gi tr cho n vi bin
PERSON v cui cng in n trn bin STDOUT.
#!/bin/sh
# Author : Zara Ali
# Copyright (c) Tutorialspoint.com
# Script follows here:
echo "What is your name?"
read PERSON
echo "Hello, $PERSON"
Di yl chy mu ca script trn:
$./test.sh
Whatisyour name?
ZaraAli
Hello,ZaraAli
$
S dng cc bin trong ShellMt bin l mt chui k t t chng ta gn mt gi tr. Gi tr c gn c th l mt s, vnbn, tn file, thit b hoc bt k kiu no khc ca d liu.
Mt bin l khng g khc ngoi mt con tr tr ti d liu thc. Shell cho php bn to, g n, v
xa cc bin.
7/23/2019 Ti Liu UNIX Ting Vit
69/161
http://vietjack.com/unix/index.jsp Copyright vietjack.com
http://vietjack.com/Trang chia scc bi hc online min ph Page 69
Cc tn bin trong Unix/LinuxTn ca mt bin c th ch cha cc k t (a ti z hoc t A ti Z), cc s (t 0 ti 9), hoc k
hiu gch di ( _).
Theo quy c, cc bin Unix shell s c tn ca chng trong ch in hoa.
V d di y v mt tn bin hp l.
_ALI
TOKEN_A
VAR_1
VAR_2
Sau y l v d v cc tn bin khng hp l:
2_VAR
-VARIABLE
VAR1-VAR2
VAR_A!
L do l bn khng th s dng cc k t khc nh !, *, hoc - , bi v cc k t ny c ngha c
bit i vi shell.
nh ngha cc bin trong Unix/LinuxCc bin c nh ngha nh sau:
variable_name=variable_value
V d:
NAME="Zara Ali"
V d trn nh ngha bin Name v gn gi tr Zara Ali cho n. Cc bin theo kiu ny c gi l
cc bin v hng (scala). Mt bin v hng ch c th gi mt gi tr ti mt thi im.
Shell cho php bn gi bt k gi tr no bn mun trong mt bin. V d:
VAR1="Zara Ali"
7/23/2019 Ti Liu UNIX Ting Vit
70/161
http://vietjack.com/unix/index.jsp Copyright vietjack.com
http://vietjack.com/Trang chia scc bi hc online mi