You are on page 1of 42

Mo0noto UNIX vo Apvpou

Evq onv qpvqpiov viq q /sioupvik ouonqq Unix kqi Linux. Oko q/ q0nqq ou
kq/ouv q 8qoik n vpqn svo/ov ou UNIX kqi ou Linux.
Eoovmvn oto Artoupvk Zotno UNIX
Ti sivqi o UNIX;
Apvsiq kqi Aispvqois
Aon Kqq/vov
Eskivovq vq Tspqik ou UNIX
Hpmto M0no
Evion Apvsiov kqi Kqq/vov
Anioupviq Kqq/vov
A//qvn os Aiqopsik Kq/ovo
Oi Kq/ovoi . kqi ..
Aiqpo
Hspioosps H/npoopis viq Kqq/vou kqi Aiqpo
Artrpo M0no
Avivpqn Apvsiov
Msqop Apvsiov
Aiqvpqn Apvsiov kqi Kqq/vov
Evion Hspisvovov Apvsiou onv O0vn
Avqcnnon oq Hspisvsvq Ev Apvsiou
Tpto M0no
Avqkqs0uvon
Avqkqs0uvon n EEou
Avqkqs0uvon n Eioou
Zo/nvoosi (pipes)
Ttopto M0no
Xqpqknps Mq/qvp
Zu8osi oq Ovqq Apvsiov
Avqcnnon on Bon0siq
Hnto M0no
UNIX / Linux le:///Users/sonic/Desktop/UNIX/one le.html
1 of 42 05/02/2010 12:58 ..
Ao/siq Zuonqo Apvsiov (Aikqioqq Hpo8qon)
A//qvn Aikqioov
Aispvqois kqi Jobs
Evion Zqqnvov Aispvqoiov kqi Aispvqoiov Hqpqoknviou
Tspqio iq Aispvqoiq
Tkto M0no
A//s Xpnois Evo/ UNIX
Too M0no
Msqv/oion Aovioiko UNIX
Avknon ou Hnvqiou Koikq
Aoouison ou Hnvqiou Koikq
Anioupviq kqi Hpooqpovn Makefile
Anioupviq ou Hqkou
Ek/son ou Aovioiko
Aiqvpqn n-qqpqinou Koikq
Ovoo M0no
Msq8/n ou UNIX
Msq8/n Hspi8//ovo
Msq8/n Ks/ou
Xpnon ov Msq8/nov
To ksisvo qu iqi0sqi u nv siq Creative Commons License.
Au o qpvovo pvo 8qoicsqi onv qpvikn spvqoiq ou M.Stonebank@surrey.ac.uk, 19
Oktmpou 2001
Mopsis vq 8psis o pouo Avv/ik Ksisvo onv oo0soiq http://www.ee.surrey.ac.uk
/Teaching/Unix/index.html
Hpooqpovn kqi qoon oq E//nvik: Mqvo/n Kiqvi (manolis at FreeBSD dot org)
Eoovmvn oto UNIX
Ti sivqi o UNIX;
To UNIX sivqi vq /sioupvik oonq ou Eskivnos vq
qvqoosqi n skqsiq ou 1960 kqi 8pioksqi q s os iqpkn
qvuEn. H vvoiq ou Asioupviko Zuonqo qvqpsqi os vq
qpi0 povpqov ou kvsi vqv uo/ovion vq /sioupvsi. To
UNIX / Linux le:///Users/sonic/Desktop/UNIX/one le.html
2 of 42 05/02/2010 12:58 ..
UNIX sivqi vq oq0sp oonq o ooio vsi nv ikqvnq vq
sks/si o// povpqq quvpovq kqi vq sEunpssi o//o
vpnos nv iiq oivn. Eivqi kq//n/o viq sEunpsn (servers) nvqvnqq vpqsiou
(dekstops) oq0o spvqoiq (workstations) kqi opno uo/ovio.
Tq ouonqq UNIX iq0ouv kqi vpqik spi8//ov spvqoiq (GUI) qpoio s qu ou
vpnoiooisiqi oq Microsoft Windows. To vpqik spi8//ov qpvsi vq sko/o po
spvqoiq. Cooo n vvoon ou UNIX sivqi qqpqinn viq spvqois ou sv kq/ovqi q
koio vpqik spvq/sio, n qv o vpqik spi8//ov sv sivqi iq0oio, viq qpsivq qv
siqos ouvssvoi oo qoqkpuovn po8qon.
Tq Ein ou UNIX
Ypvouv qpks iqopsik skosi ou UNIX, qv kqi oi spioosps vouv
qpks ooins. Oi io ouvn0iovs sivqi o Sun Solaris, o GNU/Linux,
iops skosi BSD kqi o MacOS X.
Zo ovo/sio q vpnoiooios FreeBSD oo Epvqonpio 1 kqi Debian Linux oo
Epvqonpio 2. Aiq0ous qkq vq FreeBSD kqi vq Debian sEunpsnn.
To Asioupvik Zonq UNIX
To /sioupvik oonq UNIX qos/siqi q piq 8qoik nqq: Tov upnvq, o k/uo kqi q
u/oiq povpqq.
O Hupnvo
O upnvq ou UNIX sivqi o kvpo ou /sioupviko ouonqo. Aiq0si vpvo kqi vnn oq
povpqq kqi vsipicsqi o oonq qpvsiov kqi i sikoivovis, qvqokpivsvo oi k/nosi
ouonqo.
C qpsivq ou pou s ov ooio ouvspvcovqi o k/uo kqi o upnvq, q uo0oous
i vq vpnon vpsi nv svo/n rm myfile (n ooiq vsi o qo/soq n iqvpqn ou
qpvsiou myfile). To k/uo uvvsi oo oonq qpvsiov viq o qpvsio ou spivsi o pvpqq
rm kqi siq cnsi q ov upnvq, oo k/nosov ouonqo vq sks/osi o rm oo myfile.
Oqv o/ok/npo0si n ispvqoiq rm myfile o k/uo siopsi nv popon % oo vpnon,
sivvovq ou oi i sivqi oio vq sv0si //s svo/.
To KKuoo
To k/uo svspvsi o isqn (svisoo) sqE ou vpnon kqi ou upnvq. Oqv o vpnon
sio/0si oo oonq, o pvpqq ou sivqi us0uvo viq nv qvqvvopion ou (o login) s/vvsi
o voq vpnon kqi ov koik ou kqi kqiv Eskivsi o pvpqq ou sivqi vvoo o
k/uo. To k/uo sivqi vq pvpqq spnvsiq svo/ov (command line interpreter n CLI).
Epnvssi i svo/ ou vpsi o vpnon kqi kqvovicsi viq nv sk/son ou. Oi svo/ ou
vpnon sivqi kqi qu povpqq: qv spqicouv, o k/uo sivvsi Eqv nv popon (% n
UNIX / Linux le:///Users/sonic/Desktop/UNIX/one le.html
3 of 42 05/02/2010 12:58 ..
$) oo vpnon sivvovq i opsi vq ouvsviosi s nv sk/son //ov svo/ov.
Ooio vpnon iq0si ikqv vvoosi opsi vq pooqposi n ouspiop ou ks/ou
ou. Ypvsi qkq n uvqnq vpnon iqopsiko ks/ou qkq kqi os vq vo nvvnq.
Zo ovo/sio q o k/uo ou vpnoiooios q posi/ovn sivqi o bash.
To bash vsi koiq vqpqknpioik ou 8on0ov o vpnon qv siovsi svo/:
Auqn ou/npoon ovqo qpvsiou - H/nkpo/ovovq vo vq po iq svo/n n sv
ovqo qpvsiou kqi icovq o Tab, o k/uo 0q ou/npoosi quqq o u/oio po.
Av o k/uo 8psi spioospq q vq ovqq ou vq qipicouv s q vpqq ou vouv
/nkpo/ovn0si, 0q qkouosi vq vqpqknpioik nvo (beep) ou onqivsi i psi vq vpuss
qkq spik vpqq kqi vq ioss Eqv o tab.
oopik - To k/uo iqnpsi iq /ioq ov svo/ov ou vss /nkpo/ovnosi. Av psi vq
sqvq/8ss iq svo/n opsis vq vpnoiooinoss q vo kqi ko 8s/kiq oo /nkpo/vio
viq vq sis kqi vq sks/oss Eqv i ponvosvs svo/. Mopsis sion vq vpuss nv
svo/n history viq vq sis iq /ioq s i ponvosvs svo/ oq.
Apvsiq kqi Aispvqois
Zo UNIX q vq sivqi sis qpvsio sis ispvqoiq.
Miq ispvqoiq sivqi vq pvpqq ou sks/siqi n sovn oivn kqi opsi vq qvqvvopiosi
q vq ovqik qpi0 ispvqoiq, PID (process identifier).
Evq qpvsio sivqi iq ou//ovn sovov. Tq qpvsiq nioupvovqi q ou vpnos s nv
8on0siq ouvqkov ksivou, sqv/oioov k./..
Hqpqsivqq qpvsiov:
Evq vvpqo (qvqop, p0po k./..)
To ksisvo sv povpqo o vsi vpqsi os iq v/oooq povpqqioo uun/o
siou
Onvis ou sivqi qsu0siq kqqvon q o nvvnq q// qkqqvns q vq
uoio/ovik vpnon. Fiq qpsivq iq ou//ovn q uqik uniq (vq sks/oio n uqik
qpvsio).
Evq kq/ovo ou spivsi /npoopis ovsik s q spisvsvq ou. Tq spisvsvq opsi
vq sivqi vq sivq q qpvsiq kqi //ou kqq/vou (uokqq/vou).
Aon Kqq/vov
Tq qpvsiq oqooiovqi os iq on kqq/vov. To oonq qpvsiov vsi ispqpvikn on, o
vq qvopoo vpo. H kopun n ispqpviq kq qpoon ovocsqi root (kqi vpsqi o
UNIX / Linux le:///Users/sonic/Desktop/UNIX/one le.html
4 of 42 05/02/2010 12:58 ..
iq k0so / )
Zo qpqvo ivpqq, 8/ous i o poooik kq/ovo (home) ou pouviqko
oinn "ee51vn" spivsi o uokqq/vou (docs kqi pics) kqi vq qpvsio, o report.doc.
H /npn iqpon viq o qpvsio report.doc sivqi "/home/its/ug1/ee51vn/report.doc"
Eskivovq Evq Tspqik ou UNIX
Fiq vq qvoiEss vq spqik ou UNIX, kvs click oo sikoviio "Terminal" icon oo svo
Applications/Accessories (H qkpi8n oo0soiq opsi vq sivqi iqopsikn qv/ovq s o vpqik
spi8//ov ou vpnoiooisis).
UNIX / Linux le:///Users/sonic/Desktop/UNIX/one le.html
5 of 42 05/02/2010 12:58 ..

Oq sqviosi vq qp0upo spqiko s iq popon (% n $) oo ooio opsis vq qpvioss
vq vpss svo/.

UNIX: Hpmto M0no
1.1 Evion Apvsiov kqi Kqq/vov
ls (list)
UNIX / Linux le:///Users/sonic/Desktop/UNIX/one le.html
6 of 42 05/02/2010 12:58 ..
M/i sio/0ss oo oonq, o qpvik oq kq/ovo sivqi o poooik oq kq/ovo,
vvoo kqi o home directory. O poooik oq kq/ovo vsi o iio voq s o voq
vpnon oq, viq qpsivq ee91ab kqi os quv qo0nksovqi q qpvsiq kqi oi uokq/ovoi
ou nioupvsis.
Fiq vq sis i upvsi oov poooik oq kq/ovo, /nkpo/ovnos:
% ls
H svo/n ls ( q ikp vpqq L kqi S ) sivvsi iq /ioq ov spisvovov ou pvovo
kqq/vou.
Tn sovn oivn ioo vq nv upvouv opq qpvsiq oov kq/ovo oq, kqi os qun nv
spioon 0q sis q/o Eqv nv popon ou ks/ou oq. |oo o o iqvsipion
ouonqo vq vsi nn 8/si koiq qpvsiq oo /ovqpiqo oq, nv opq ou ov niopvnos.
H ls onv pqvqiknq sv sivvsi /q q qpvsiq ou kqq/vou oq, q// vo qu ou o
voq ou sv qpvicsi s s/siq (.) Tq qpvsiq ou Eskivvs s s/siq (.) sivqi vvoo kqi o kpu
qpvsiq kqi ouvn0o spivouv onqvik pu0iosi povpqov. Eivqi kpu viqi sv psi
vq q q//css, sk qv sios sEoiksiovo s o UNIX!!!
Fiq vq sis /q q qpvsiq oov kq/ovo oq, ouspi/q8qvovov kqi quov ou Eskivvs s
nv s/siq, /nkpo/ovnos:
% ls -a
Oo opsis vq sis, o ls -a sivvsi kqi q qpvsiq ou kqvovik sivqi kpu.
UNIX / Linux le:///Users/sonic/Desktop/UNIX/one le.html
7 of 42 05/02/2010 12:58 ..
H svo/n ls sivqi vq kq/ qpsivq svo/n ou opsi vq sv0si poqipsik opioqq: o -a
sivqi vq oio qpsivq. Tq poqipsik opioqq n qpspoi q//couv n ouspiop iq
svo/n. To UNIX iq0si vq svooqovo oonq 8on0siq o ooio opsi vq oq si ois
qpqpou vsqi k0s svo/n kqi o k0s iq q qu sq8//ouv n ouspiop n
svo/n (0q o os qpvspq oo 0nq).
1.2 Anioupviq Kqq/vov
mkdir (make directory)
Oq nioupvnoous opq vq uokq/ovo oq oov poooik oq kq/ovo, viq vq kpqs
q qpvsiq q ooiq 0q nioupvnoss kq n ipksiq quov ov q0nov. Fiq vq nioupvnoss
vq uokq/ovo s o voq unixstuff oov pvovq kq/ovo, /nkpo/ovnos:
% mkdir unixstuff
Fiq vq sis ov kq/ovo ou /i nioupvnoqs, /nkpo/ovnos:
% ls
1.3 A//qvn os Aiqopsik Kq/ovo
cd (change directory)
H svo/n cd directory q//csi ov pvovq kq/ovo os quv ou qvqpsqi o 'directory'.
Mopsis vq okssis ov pvovq kq/ovo o quv ou 8pioksos n sovn oivn (n 0on
oq n/. oq oo vpo ou ouonqo qpvsiov ou siqs ponvouvo).
Fiq vq sqkivn0sis oov kq/ovo ou /i nioupvnoqs, vpus:
% cd unixstuff
UNIX / Linux le:///Users/sonic/Desktop/UNIX/one le.html
8 of 42 05/02/2010 12:58 ..
Fpus ls viq vq sis q spisvsvq ou (sv 0q sis ioq viqi sivqi sio!)
Aoknon 1a
4iEs vq //o kq/ovo oq oov unixstuff, s o voq backups
1.4 Oi Kq/ovoi . kqi ..
Evo 8pioksos oov kq/ovo unixstuff /nkpo/ovnos:
% ls -a
Oo opsis vq sis, oov kq/ovo unixstuff (q// kqi os /ou ou //ou kqq/vou),
upvouv o siikoi kq/ovoi s i ovoqois (.) kqi (..)
O Tpvmv KotKovo (.)
Zo UNIX, n (.) onqivsi ov pvovq kq/ovo, oi qv /nkpo/ovnoss
% cd .
Znsioon: upvsi vq ksv sqE n svo/n cd kqi n s/siq (.)
onqivsi i 0q sivss oov kq/ovo ou sios (oov unixstuff).
Apvik qu //ov sv 0q oq qvsi vpnoio, q// 0q sis qpvspq i vpnoiooiovq o (.)
o o voq ou pvovo kqq/vou, 0q oq v/uoosi q okon /nkpo/vnon.
O Fovk KotKovo (..)
Oi o s/sis (..) onqivouv o vovik ou pvovo kqq/vou. H svo/n:
% cd ..
0q oq si vq kq/ovo svo onv ispqpviq (on ouvkskpivn spioon, oov poooik
oq kq/ovo). Aokios o opq.
Znsioon: Av /nkpo/ovnoss cd vopi kqvvq pioq, 0q vupioss vq oov poooik oq
kq/ovo. Au sivqi vpnoio qv vss vq0si oq oo oonq qpvsiov.
1.5 Aiqpo
pwd (print working directory)
Oi iqpo oq sipouv vq qvqkq/uss ou 8pioksos os ovon s /o o oonq qpvsiov.
UNIX / Linux le:///Users/sonic/Desktop/UNIX/one le.html
9 of 42 05/02/2010 12:58 ..
Fiq qpsivq, viq vq 8psis nv q/un iqpon ou poooiko oq kqq/vou, vpus cd
viq vq siopuss os quv, kqi siq /nkpo/ovnos:
% pwd
H /npn iqpon 0q sivqi ki oqv o qpqko:
/home/its/ug1/ee51vn
o ooio onqivsi i o ee51vn (o poooik oq kq/ovo) 8pioksqi oq oov uokq/ovo
ug1 (ov kq/ovo n oq),o ooio s n osip ou 8pioksqi oq oov uokq/ovo its ou
8pioksqi oov uokq/ovo home o ooio 8pioksqi oq oo picik kq/ovo, vvoo o " / " .
Aoknon 1b
Xpnoiooinos i svo/ cd, ls and pwd viq vq sEspsuvnoss o oonq qpvsiov.
(Oun0sis i qv vq0sis, opsis vq vpnoiooinoss nv svo/n cd vopi opioqq viq vq
siopuss soq oov poooik oq kq/ovo)
1.6 Hspioosps H/npoopis viq Kqq/vou kqi Aiqpo
Kotovnon tmv Aopomv
H/nkpo/ovnos poq cd viq vq siopuss oov poooik oq kq/ovo, kqi siq:
% ls unixstuff
viq vq sis q spisvsvq ou kqq/vou unixstuff
UNIX / Linux le:///Users/sonic/Desktop/UNIX/one le.html
10 of 42 05/02/2010 12:58 ..
H/nkpo/ovnos opq:
% ls backups
Oq sis vq nvuq o o qpqko:
backups: No such file or directory
O /vo ou 8/ss qu o nvuq, sivqi i o backups sv 8pioksqi oov pvov kq/ovo
oq. Fiq vq vpnoiooinoss iq svo/n os vq qpvsio (n kq/ovo) ou sv 8pioksqi oov
pvovq kq/ovo (os quv ou sios oq), 0q psi sis vq vpnoiooinoss nv svo/n cd viq
vq sqkivn0sis oo ooo kq/ovo, n vq kq0opioss nv /npn iqpon ou. Fiq vq sis q
spisvsvq ou kqq/vou backups, 0q psi vq vpuss:
% ls unixstuff/backups

~ (o npoomnk oo kotKovo)
Mopsis vq vpnoiooinoss ov vqpqknpq ~ viq vq qvqsp0sis oov poooik oq kq/ovo.
Mopsis vq vpnoiooinoss qu o vqpqknpq viq vq pooiopioss iqpo ou Eskivov
q ov kq/ovo oq. Av /nkpo/ovnoss:
% ls ~/unixstuff
0q sis q spisvsvq ou kqq/vou oq unixstuff, ovso s o ou 8pioksos n sovn
oivn oq oo oonq qpvsiov.
Ti iosss i 0q siEsi n svo/n:
% ls ~
Ti iosss i 0q siEsi n svo/n:
% ls ~/..
Hspi/nun
EvtoKn Znooo
ls
Asivvsi qpvsiq kqi kqq/vou
ls -a
Asivvsi /q q qpvsiq kqi ou kqq/vou
UNIX / Linux le:///Users/sonic/Desktop/UNIX/one le.html
11 of 42 05/02/2010 12:58 ..
mkdir
Anioupvsi vq kq/ovo
cd directory
Zq sqpsi oov kq/ovo ou qvqvpsqi
cd
Zq sqpsi qsu0siq oov poooik oq kq/ovo
cd ~
Zq sqpsi oov poooik oq kq/ovo
cd ..
Zq sqpsi oov ponvosvo onv ispqpviq kq/ovo (vovik)
pwd
Asivvsi nv /npn iqpon ou pvovo kqq/vou
UNIX: Artrpo M0no
2.1 Avivpqn Apvsiov
cp (copy)
H svo/n cp file1 file2 nioupvsi vq qvivpqo ou file1 oov pvovq kq/ovo kqi o
ovocsi file2.
Topq, 0q qvivpuous vq qpvsio ou upvsi os koio onsio ou ouonqo qpvsiov (kqi
oo ooio vous po8qon) oq oov kq/ovo unixstuff ou vous nioupvnosi,
vpnoiooiovq nv svo/n cp.
Apvik vpnoiooinos nv svo/n cd viq vq sqkivn0sis oov kq/ovo unixstuff.
% cd ~/unixstuff
Esiq /nkpo/ovnos onv popon:
% cp /vol/examples/tutorial/science.txt .
Znsioon: Mnv Esvoss nv s/siq . oo /o. Oun0sis i n s/siq oo UNIX ou8o/icsi ov
pvovq kq/ovo.
H qpqvo svo/n onqivsi "qvvpqus o qpvsio science.txt oov pvovq kq/ovo,
iqnpovq o iio voq".
Aoknon 2a
Anioupvnos vq qvivpqo qoq/siq ou qpvsiou science.txt, qvivpovq o os vq qpvsio
s voq science.bak
2.2 Msqop Apvsiov
UNIX / Linux le:///Users/sonic/Desktop/UNIX/one le.html
12 of 42 05/02/2010 12:58 ..
mv (move)
H svo/n mv file1 file2 sqpsi (n sovocsi) o file1 oo file2.
Fiq vq sqkivnoss vq qpvsio q iq 0on os iq //n, vpnoiooinos nv svo/n mv. Au vsi
o qo/soq nv sqkivnon qvi viq nv qvivpqn ou qpvsiou, oi oo /o 0q vss vq
qvivpqo ou qpvsiou qvi viq o.
Mopsis sion vq vpnoiooinoss nv svo/n mv viq vq sovooss vq qpvsio. Au vivsqi
qv o sqkivnoss oov iio kq/ovo q// s iqopsik voq.
Oq sqkivnoous opq o qpvsio science.bak oov kq/ovo backup ou nioupvnoqs
ponvouvo.
Apvik sqkivn0sis oov kq/ovo unixstuff (s/icous vq 0uoqos o vivsqi). Esiq, kq0o
sios oq oov kq/ovo unixstuff, /nkpo/ovnos:
% mv science.bak backups/.
H/nkpo/ovnos ls kqi ls backups viq vq sis qv n svo/n /siopvnos kqvovik.
2.3 Aiqvpqn Apvsiov kqi Kqq/vov
rm (remove), rmdir (remove directory)
Fiq vq iqvpuss vq qpvsio, vpnoiooinos nv svo/n rm. C qpsivq, 0q nioupvnoous
vq qvivpqo ou qpvsiou science.txt kqi siq 0q o iqvpuous.
Moq oov kq/ovo unixstuff, /nkpo/ovnos:
% cp science.txt tempfile.txt
% ls
% rm tempfile.txt
% ls
Mopsis vq vpnoiooinoss nv svo/n rmdir viq vq iqvpuss vq kq/ovo (8s8qio0sis
poq i sivqi sio). Hpooq0nos vq iqvpuss ov kq/ovo backups. Asv 0q oposs vq
o kvss, kq0o o UNIX sv 0q oq qnosi vq iqvpuss vq kq/ovo ou sv sivqi sio.
Aoknon 2b
Anioupvnos vq kq/ovo s o voq tempstuff vpnoiooiovq nv svo/n mkdir, kqi siq
iqvpus ov vpnoiooiovq nv svo/n rmdir.
2.4 Evion Hspisvovov Apvsiou onv O0vn
UNIX / Linux le:///Users/sonic/Desktop/UNIX/one le.html
13 of 42 05/02/2010 12:58 ..
clear (ko0opo o0vn)
Hpiv Eskivnoss s nv ssvn svnq, ioo 0/ss vq kq0qpioss o qp0upo ou spqiko
q i ponvosvs svo/, oos n Eoo ov svo/ov ou qko/ou0ov vq sivqi Esk0qpn.
Znv popon, /nkpo/ovnos:
% clear
Au 0q kq0qpiosi o qp0upo kqi 0q oq qnosi vo s nv popon $ oo vo po.

cat (concatenate)
Mopsis vq vpnoiooinoss nv svo/n cat viq vq sis q spisvsvq sv qpvsiou onv o0vn
oq. H/nkpo/ovnos:
% cat science.txt
Oo opsis vq sis, o qpvsio sivqi svq/spo q o vs0o ou qpq0pou kqi oi
ovoq ku/si po q vo s qo/soq vq nv opos vq o os o/k/npo.

less
H svo/n less vpsi q spisvsvq sv qpvsiou onv o0vn, iq os/iq k0s op.
H/nkpo/ovnos:
% less science.txt
Zo /o k0s os/iq ios o [space-bar] qv 0/ss vq sis nv ssvn os/iq, n o [q] viq vq
spqioss nv qvvvoon. Oo kqq/q8qivss, n less sivqi poispn q nv cat viq sv/q
qpvsiq.

head
H svo/n head vpsi i kq pos vpq sv qpvsiou onv o0vn.
Kq0qpios poq nv o0vn kqi s /nkpo/ovnos:
% head science.txt
Esiq /nkpo/ovnos:
UNIX / Linux le:///Users/sonic/Desktop/UNIX/one le.html
14 of 42 05/02/2010 12:58 ..
% head -5 science.txt
Ti iqop pok/sos o -5 onv svo/n head;

tail
H svo/n tail sqvicsi i kq s/suqis vpq sv qpvsiou onv o0vn.
Kq0qpios nv o0vn kqi /nkpo/ovnos:
% tail science.txt
Eponon: Ho opsis vq sis i 15 s/suqis vpq sv qpvsiou;

2.5 Avqcnnon oq Hspisvsvq Ev Apvsiou
AnKn Avontnon r tn Xpnon tn less
Xpnoiooiovq nv svo/n less, opsis vq uEss o qpvsio viq iq /En k/sii. Fiq
qpsivq, viq vq uEss o qpvsio science.txt viq n /En 'science', /nkpo/ovnos:
% less science.txt
kqi kq0o sks/siqi n less, /nkpo/ovnos iq k0so [/] qko/ou0osvn q n /En ou
uvvss
/science
Oo opsis vq sis n, less 8pioksi kqi oicsi n /En. H/nkpo/ovnos [n] viq vq 8psis o
ssvo onsio ou sqvicsqi n /En.

grep (n pmtnortr vot tn Kvr to)
H svo/n grep qos/si vq q q uooinvq 8on0nik spvq/siq ou UNIX +vvsi qpvsiq viq
kq0opiovs /Esi n patterns. Apvik kq0qpios nv o0vn kqi siq /nkpo/ovnos:
% grep science science.txt
Oo opsis vq sis, n grep svios k0s vpqn ou spivsi nv /En science.
UNIX / Linux le:///Users/sonic/Desktop/UNIX/one le.html
15 of 42 05/02/2010 12:58 ..
H no vi;
Aokios o qpqko:
% grep Science science.txt
H svo/n grep iqvopicsi ikp-ksq/qiq. Eoi o Science sivqi iqopsik q o science.
Fiq vq nv vivsqi iqvopio ikpov-ksq/qiov, vpnoiooinos nv si/ovn -i, n/.
/nkpo/ovnos:
% grep -i science science.txt
Fiq vq uEss viq iq pon n vq pattern, 0q psi vq o spik/sioss os ov sioqvovik. Fiq
qpsivq, viq vq uEss viq n pon spinning top, /nkpo/ovnos:
% grep -i 'spinning top' science.txt
Kois qkq si/ov n grep sivqi:
-v sivvsi i vpq ou AEN qipicouv
-n sivvsi ov qpi0 vpqn poo q k0s vpqn
-c uovsi vo ov qpi0 ov vpqov ou qipiqEqv
Aokios kois q qu i si/ov kqi sis q iqopsik qos/oqq. Mnv Esvvs i
opsis vq vpnoiooinoss spioosps q iq si/ov k0s op. Fiq qpsivq, 8psis
ov qpi0 ov vpqov ou sv spivouv i /Esi science n Science.
% grep -ivc science science.txt

wc (word count)
Evq iiqispq 8on0nik ikp pvpqq sivqi o wc o ooio spsi /Esi. Fiq vq spnoss i
/Esi oo qpvsio science.txt, /nkpo/ovnos:
% wc -w science.txt
Fiq vq 8psis os vpq vsi o qpvsio, /nkpo/ovnos:
% wc -l science.txt
Hspi/nun
UNIX / Linux le:///Users/sonic/Desktop/UNIX/one le.html
16 of 42 05/02/2010 12:58 ..
EvtoKn Znooo
cp file1 file2
Avvpqus o file1 kqi ovqos o qvivpqo file2
mv file1 file2
Msqkivnos n sovqos o file1 os file2
rm file
Aivpqus vq qpvsio
rmdir directory
Aivpqus vq kq/ovo
cat file
Evios vq qpvsio
less file
Evios vq qpvsio iq os/iq k0s op
head file
Evios i pos vpq sv qpvsiou
tail file
Evios i s/suqis vpq sv qpvsiou
grep 'keyword' file
+Es vq qpvsio viq iq ouvkskpivn /En
wc file
Mpnon vpqov//Esov/vqpqknpov sv qpvsio
UNIX: Tpto M0no
3.1 Avqkqs0uvon
Oi spioosps ispvqois ou Eskivov oo svo/ov ou UNIX vpouv onv uooinvn
Eoo (n/. onv o0vn n qp0upo ou spqiko). Ho// q qu i svo/ qipvouv nv
siooo ou q nv uooinvn siooo (n/, iq8couv q o /nkpo/vio). Ek q nv
uooinvn siooo kqi Eoo upvsi sion kqi n uooinvn Eoo o/qo ou oi
ispvqois sqvicouv q nvqq /0ou ou. A posi/ovn n Eoo o/qo
kqsu0vsqi onv o0vn n qp0upo ou spqiko.
Evous nn si n vpnon n svo/n cat s nv ooiq opos vq sqvioous q spisvsvq
sv qpvsiou onv o0vn.
Fpus opq nv svo/n cat vopi vq pooiopioss koio qpvsio ou vq iq8osi:
% cat
Fpus siq kois /Esi oo /nkpo/vio kqi ios o /nkpo [Return.
T/o, ios o /nkpo [Ctrl] kqi kq0o o kpqs, ios o [d] (qu sv' ouvoiq vpsqi ^D)
viq vq spqioss nv siooo.
Ti ouv8n;
Av sks/oss nv svo/n cat vopi vq kq0opioss koio qpvsio viq vq iq8osi, iq8csi nv
UNIX / Linux le:///Users/sonic/Desktop/UNIX/one le.html
17 of 42 05/02/2010 12:58 ..
uooinvn siooo (o /nkpo/vio) kqi /i /8si o vqpqknpq /ou qpvsiou (o ^D),
qvivpsi nv siooo onv uooinvn Eoo (nv o0vn).
Zo UNIX vous n uvqnq vq qvqkqsu0vous oo nv siooo oo kqi nv Eoo ov
svo/ov.
3.2 Avqkqs0uvon n EEou
Xpnoiooios o o8o/o > viq vq qvqkqsu0vous nv Eoo iq svo/n. Fiq qpsivq, viq
vq nioupvnoous vq qpvsio s voq list1 o ooio vq spivsi iq /ioq q poq,
/nkpo/ovos:
% cat > list1
Fpus siq q ovqq spikov poov. Hios [Return] s q k0s voq.
pear
banana
apple
^D {!"#$ %&'()*+ [Ctrl] ,'+ [d] -+' #./01}
Au ou ou8qivsi, sivqi i n svo/n cat iq8csi nv uooinvn siooo (o /nkpo/vio) kqi
o > qvqkqsu0vsi nv Eoo - ou uoio/ovik sivqi n o0vn - os vq qpvsio s o voq list1
Fiq vq iq8oss q spisvsvq ou qpvsiou, /nkpo/ovnos:
% cat list1
Aoknon 3a
Xpnoiooiovq nv qpqvo 0oo, nioupvnos vq qpvsio s o voq list2 ou vq
spivsi q qpqko poq: opok/i, qvqpivi, vvko, vkpipou. Xpnoiooinos nv
kq//n/n svo/n viq vq iq8oss q spisvsvq ou list2

3.2.1 Hpoo0nkn Hrprvovmv or Tvo Apvro
Xpnoiooiovq n opn >> opsis vq poo0oss nv uooinvn Eoo oo /o sv
nn upvovo qpvsiou, vopi vq iqvpuss q spisvsvq ou vsi nn. Eoi, viq vq
poo0oss spioosps kqqvopiosi oo qpvsio list1, /nkpo/ovnos:
% cat >> list1
Kqi siq /nkpo/ovnos q ovqq spioospov poov :)
UNIX / Linux le:///Users/sonic/Desktop/UNIX/one le.html
18 of 42 05/02/2010 12:58 ..
peach
grape
orange
^D (Control D -+' #./01 *+%$20")
Fiq vq iq8oss q spisvsvq ou qpvsiou, /nkpo/ovnos:
% cat list1
Oq psi vq vss opq o qpvsiq. To vq spivsi Ei poq, o //o spivsi oospq poq.
Oq vpnoiooinoous opq nv svo/n cat viq vq svooous (concatenate) q o qpvsiq, o list1
kqi o list2 os vq vo qpvsio s o voq biglist. H/nkpo/ovnos:
% cat list1 list2 > biglist
H svo/n qun iq8csi q spisvsvq ov qpvsiov list1 kqi list2 s n osip ou qivovqi kqi
vpsi nv Eoo oo qpvsio biglist
Fiq vq iq8oss q spisvsvq ou vou qpvsiou, /nkpo/ovnos:
% cat biglist
3.3 Avqkqs0uvon n Eioou
Oq vpnoiooinoous o o8o/o < viq vq qvqkqsu0vous nv siooo n svo/n.
H svo/n sort qEivosi q/q8nik n qpi0nik iq /ioq. H/nkpo/ovnos:
% sort
Fpus siq q ovqq spikov coov. Hios [Return] s q k0s voq.
dog
cat
bird
ape
^D (control d -+' )' %#''#3%*#*)
H Eoo 0q oicsi s nv qpqko:
ape
bird
cat
UNIX / Linux le:///Users/sonic/Desktop/UNIX/one le.html
19 of 42 05/02/2010 12:58 ..
dog
Mopsis vq vpnoiooinoss o < viq vq qvqkqsu0vss nv siooo oos vq popvsqi q vq
qpvsio qvi viq o /nkpo/vio. Fiq qpsivq, viq vq qEivonoss n /ioq s q poq,
/nkpo/ovnos:
% sort < biglist
kqi 0q sis nv qEivonvn /ioq onv o0vn oq.
Fiq vq vpuss nv qEivonvn /ioq os vq qpvsio, /nkpo/ovnos:
% sort < biglist > slist
Xpnoiooinos nv svo/n cat viq vq iq8oss q spisvsvq ou qpvsiou slist
3.4 Zo/nvoosi
Fiq vq sis oio //o sivqi ouvssvo oo oonq qci s so, /nkpo/ovnos:
% who
Miq 0oo viq vq sis qun n /ioq ovoov qEivonvn, sivqi vq /nkpo/ovnoss:
% who > names.txt
% sort < names.txt
Au sivqi ko qpv, kqi 0q psi sion vq 0un0sis vq iqvpuss o pooopiv qpvsio
names.txt qv s/siooss. Au ou onv pqvqiknq 0/ss vq kvss, sivqi vq svooss s
koio po nv Eoo n svo/n who s nv siooo n svo/n sort. Au qkpi8o kvouv oi
oo/nvoosi. To o8o/o n oo/nvoon sivqi n k0sn pq |
Fiq qpsivq, /nkpo/ovnos:
% who | sort
kqi 0q pss o iio qo/soq s o qpqvo, q// io vpnvopq kqi kq0qp.
Fiq vq 8psis ooi vpnos 8piokovqi qun n oivn oo oonq, /nkpo/ovnos:
% who | wc -l
Aoknon 3b
Xpnoiooiovq oo/nvoosi, siEs /s i vpq ov qpvsiov list1 kqi list2 ou spivouv o
UNIX / Linux le:///Users/sonic/Desktop/UNIX/one le.html
20 of 42 05/02/2010 12:58 ..
vpq 'p' kqi qEivonos o qo/soq.
Hspi/nun
EvtoKn Znooo
command > file
Avqkqs0uvon uooinvn sEou os qpvsio
command >> file
Hpoo0nkn uooinvn sEou oo /o upvovo qpvsiou
command < file
Avqkqs0uvon uooinvn sioou q qpvsiou
command1 | command2
Zo/nvoon n sEou n command1 onv siooo n
command2
cat file1 file2 >
file0
Zuvvoon ov qpvsiov file1 kqi file2 oo file0
sort
TqEivnon sovov
who
Aioq vpnoov ou sivqi ouvssvoi oo oonq n sovn
oivn
UNIX: Ttopto M0no
4.1 Xqpqknps Mq/qvp
O Xopoktnpo *
O vqpqknpq * ovocsqi q/qvp, kqi qipicsi s ooionos /n0o vqpqknpov (q
nv) os vq voq qpvsiou n kqq/vou. Fiq qpsivq, oov kq/ovo unixstuff
/nkpo/ovnos:
% ls list*
Au 0q siEsi /q q qpvsiq ou pvovo kq/ovou ou Eskivvs s q vpqq list....
Aokios vq /nkpo/ovnoss:
% ls *list
Au 0q siEsi /q q qpvsiq ou pvovo kq/ovou ou s/siovouv s q vpqq ....list
O Xopoktnpo ?
UNIX / Linux le:///Users/sonic/Desktop/UNIX/one le.html
21 of 42 05/02/2010 12:58 ..
O vqpqknpq ? qipicsi s vq qkpi8o vqpqknpq.
Eoi o ?ouse 0q qipiEsi s qpvsiq o o house kqi o mouse, q// vi o grouse.
Aokios vq /nkpo/ovnoss:
% ls ?list

4.2 Zu8osi oq Ovqq Apvsiov
Oq psi vq onsiooous so i vq kq/ovo sivqi q/o vq siik o qpvsiou. Eoi oi
ou8osi ou iovouv viq nv ovoqo/oviq ov qpvsiov, iovouv kqi viq ou kqq/vou.
Oqv ovocous qpvsiq, psi vq qosvous vqpqknps ou vouv siikn onqoiq o / *
& %. Eion kq/ sivqi vq qosvss q ksv iqonqq oq ovqq. O qoq/ospo po
vq ovocss qpvsiq, sivqi s vpqq kqi qpi0o ou /qiviko q/8nou, kq0o kqi s q
o8o/q _ (ko q/q) kqi . (s/siq).
KoK ovoto Kok ovoto
project.txt project
my_big_program.c my big program.c
fred_dave.doc fred & dave.doc
Kq qpoon, q ovqq qpvsiov Eskivov s vq ikp vpq kqi opsi vq s/siovouv s
iq s/siq ou qko/ou0siqi q iq oq vpqov ou vqpqknpicouv q spisvsvq ou
qpvsiou. Fiq qpsivq, /q q qpvsiq ou spivouv koikq os v/oooq C opsi vq s/siovouv
s nv kq/nEn .c, .v. prog1.c. Esiq, viq vq sis iq /ioq /ov ov qpvsiov ou spivouv
koikq os C oov kq/ovo oq, vpsicsqi q/o vq vpuss ls *.c qv 8pioksos os qu ov
kq/ovo.
4.3 Avqcnnon on Bon0siq
Evomotmvr ZrKr Bon0ro
To oon oq spivsi svooqovs os/is 8on0siq ou opov vq oq ooouv
/npoopis viq i spioosps svo/. Oi os/is 8on0siq 0q oq /npoopnoouv ovsik s
i si/ov ou vsi k0s svo/n kqi o qu sq8//ouv n ouspiop n. H/nkpo/ovnos
man command viq vq sis n os/iq 8on0siq (manual) iq ouvkskpivn svo/n.
Fiq qpsivq, viq vq 0ss /sopsis viq nv svo/n wc (word count), /nkpo/ovnos:
% man wc
UNIX / Linux le:///Users/sonic/Desktop/UNIX/one le.html
22 of 42 05/02/2010 12:58 ..
Evq//qkik, opsis vq vpuss:
% whatis wc
kqi 0q pss iq ovon spivpqn (os iq vpqn) n svo/n, vopi i /sopsis ovsik
s i si/ov k./..
Apropos
Av sv vvopicss o qkpi8 voq iq svo/n, okios:
% apropos keyword
H svo/n qun 0q oq oosi i svo/ ou spivouv n /En k/sii (keyword) onv siksq/iq
n os/iq 8on0siq ou. Fiq qpsivq:
% apropos copy
Summary
EvtoKn Znooo
*
Tqipiqoq s ooionos /n0o vqpqknpov
?
Tqipiqoq s vq vo vqpqknpq
man command
Zs/iq 8on0siq viq iq svo/n
whatis command
Zvon spivpqn iq svo/n
apropos keyword
Epson ov svo/ov ou spivouv o keyword onv spi/nun ou
UNIX: Hnto M0no
5.1 Ao/siq Zuonqo Apvsiov (Aikqioqq Hpo8qon)
Ms pvovq kq/ovo ov unixstuff, /nkpo/ovnos:
% ls -l (l for long listing!)
Oq qpqnpnoss i 8/ss opq o// spioosps /sopsis ovsik s q spisvsvq
ou kqq/vou oq. Oq oicouv s o qpsivq ou 8/ss qpqko:
UNIX / Linux le:///Users/sonic/Desktop/UNIX/one le.html
23 of 42 05/02/2010 12:58 ..
K0s qpvsio (kqi kq/ovo) vsi koiq ikqioqq po8qon ou ou qvq/ovov kqi q ooiq
opsis vq sis vpovq ls -l. Eion, n svo/n ls -lg ivsi po0ss /npoopis, o
viq qpsivq o voq n oq onv ooiq qvnksi o qpvsio (oo qpsivq q, beng95):
-rwxrw-r-- 1 ee51ab beng95 2450 Sept29 11:52 file1
Znv io qpiospn on/n, upvsi iq osip q 10 o8o/q oq ooiq sqvicovqi q vpqq
d, r, w, x, - kqi spioqoiqk o s n o S. Av upvsi o d, 0q sivqi svs/o qpiosp kqi ou8o/icsi
i o voq ou 8/ous sivqi onv pqvqiknq kq/ovo. Av sivqi qpvsio, on 0on ou d
0q upvsi iq q/q (-).
Tq 9 o8o/q ou qovouv, sivvouv i sis n ikqioqq po8qon kqi oqooiovqi os
psi os s piq o8o/q n k0s iq
H qpiospn oq ov piov ou8/ov sivvsi q ikqioqq viq ov vpnon o ooio sivqi
kovo ou qpvsiou n ou kqq/vou (ee51ab oo qpqvo qpsivq)
H soqiq oq sivvsi q ikqioqq viq nv oq qv0poov onv ooiq qvnksi o qpvsio n
kq/ovo (eebeng95 oo qpqvo qpsivq)
H sEi oq sivvsi q ikqioqq viq /ou ou u/oiou vpnos.
Tq o8o/q r, w, k./.. vouv s/qp iqopsik vnq qv/ovq s o qv qvqpovqi os vq
q/ qpvsio n os vq kq/ovo.
Akomoto Hpooon or Apvro
To r (n -), sivvsi ikqioq qvvvoon (n vi). Ms /ivq /viq, qv upvsi opos vq iq8oous
kqi vq qvivpuous o qpvsio.
To w (n -), sivvsi ikqioq svvpqn (n vi). Ms /ivq /viq qv opos vq vpuous n s
koio po vq q//Eous o qpvsio.
UNIX / Linux le:///Users/sonic/Desktop/UNIX/one le.html
24 of 42 05/02/2010 12:58 ..
To x (n -), sivvsi ikqioq sk/son (n vi). Ms /ivq /viq qv opos vq sks/oous qu o
qpvsio (Av qu uoik vsi vnq, .v. qv o qpvsio sivqi koio sks/oio pvpqq).
Akomoto Hpooon or KotKovou
To r sipsi os vpnos vq 8/ouv n /ioq ov qpvsiov sv kqq/vou.
To w sipsi os vpnos vq iqvpouv qpvsiq q ov kq/ovo n vq sqkivov qpvsiq oq
os quv.
To x sipsi nv po8qon os qpvsiq ou kqq/vou. Au uovosi i vss n uvqnq vq
iq8css qpvsiq oov kq/ovo, s nv po0son i vsi ikqioqq oq ouvkskpivq
qpvsiq.
Eoi, viq vq opsis vq iq8oss vq qpvsio, 0q psi vq vss ikqioqq sk/son oov
kq/ovo oov ooio 8pioksqi kqi pq kqi oov kq/ovo ou ov spivsi k.o.k.
Mrpk Hoporvoto
-rwxrwxrwx Evq qpvsio o ooio opsi kq0vq vq iq8osi, vq q//Esi kqi vq iqvpusi.
-rw-------
Evq qpvsio o ooio opsi vo o iioknn vq vpusi kqi vq iq8osi, kqi kqvsi
//o sv vsi ooionos ikqioq. Kqvsi (os o iioknn) vsi ikqioq
sk/son. Fiq qpsivq, opsi vq sivqi o qpvsio s q email oq.
5.2 A//qvn Aikqioov Hpo8qon
chmod (oKKovn kototoon rv opvrou)
Mvo o iioknn sv qpvsiou opsi vq vpnoiooinosi nv chmod viq vq q//Esi q ikqioqq
sv qpvsiou. Oi si/ov n svo/n chmod sivqi oi qpqko:
ZoKo Znooo
u vpnon
g oq
o u/oioi
a /oi
r qvvvoon
w svvpqn (kqi iqvpqn)
UNIX / Linux le:///Users/sonic/Desktop/UNIX/one le.html
25 of 42 05/02/2010 12:58 ..
x sk/son (kqi po8qon oov kq/ovo)
+ poo0nkn ikqioqo
- iqvpqn ikqioqo
Fiq qpsivq, viq vq qqiposs q ikqioqq svvpqn kqi sk/son oo qpvsio biglist viq nv
oq kqi ou u/oiou vpnos:
% chmod go-rwx biglist
H qpqvo svo/n sv 0q sipEsi q u/oiq ikqioqq (.v. ou iioknn).
Fiq vq ooss ikqioqq qvvvoon kqi svvpqn oo qpvsio biglist os /ou:
% chmod a+rw biglist
Aoknon 5a
Aokios vq q//Ess ikqioqq oo qpvsio science.txt kqi oov kq/ovo backups.
Xpnoiooinos nv svo/n ls -l viq vq s/vEss i q ikqioqq vouv pqvqik q//Esi.
5.3 Aispvqois kqi Jobs
Miq ispvqoiq sivqi vq pvpqq ou sks/siqi kqi qvqvvopicsqi q vq ovqik
qvqvvopioik ispvqoiq, PID. Fiq vq sis /npoopis viq i ispvqois oq kqi o
qvqvvopioik ou, vpus:
% ps
Miq ispvqoiq opsi vq 8pioksqi oo pooknvio, oo qpqoknvio, n os qon. Zs vsvik
vpq o k/uo sv siopsi nv popon svo/n vpi vq spqiosi n pvouoq
ispvqoiq.
Mspik ispvqois vpsicovqi o/ vpvo viq vq sks/soov kqi oo sqE soicouv n vpnon
ou spqiko. Av sqpss iq oiq ispvqoiq oo qpqoknvio, 0q oposs vq vss soq
iq0oin nv popon svo/ov. Mopsis oi vq ouvsvioss vq sks/sis //s svo/ kq0o n
qpvikn ispvqoiq ouvsvicsi vq sks/siqi.
EktKron EvtoKmv oto Hopooknvo
Fiq vq Eskivnoss iq ispvqoiq oo qpqoknvio, poo0os vq & oo /o n vpqn svo/n.
Fiq qpsivq, n svo/n sleep siovsi iq qvqovn, viq oq susp/sq n ooous.
H/nkpo/ovnos:
UNIX / Linux le:///Users/sonic/Desktop/UNIX/one le.html
26 of 42 05/02/2010 12:58 ..
% sleep 10
H qpqvo svo/n spivsi 10 susp/sq piv siopusi n popon ou ks/ou. Mvpi
vq sis Eqv nv popon sv opsis vq kvss ioq sk q o vq spivss.
Fiq vq sks/oss nv sleep oo qpqoknvio, vpus:
% sleep 10 &
[1] 6259
Ms o & n svo/n sks/siqi oo qpqoknvio kqi n popon siopsi qoo. Mopsis vq
sks/os //q povpqq kq0o spivss qun nv svo/n vq s/sioosi.
H pon vpqn oo qpqvo qpsivq, vsi /nkpo/ovn0si q ov vpnon. H ssvn
vpqn ou qvqpsi o qpi0 n ispvqoiq kqi ou job, popvsqi q o nvvnq. O
vpnon siooisiqi viq ov qpi0 ou job (Eskivsi q ov qpi0 1) o ooio spik/sisqi os
qvk/s kqi viq ov qpi0 n ispvqoiq. Eion siooisiqi qv s/sioosi n sk/son iq
ispvqoiq ou sks/siqi oo qpqoknvio. H sk/son oo qpqoknvio sivqi vpnoin viq spvqois
ou kvouv qpks vpvo vq o/ok/npo0ov.
AnootoKn oto Hopooknvo o Arpvooo nou rktrKrto oto Hpooknvo
Znv popon, /nkpo/ovnos:
% sleep 1000
Mopsis vq 8/ss nv ispvqoiq ou sks/siqi oo pooknvio os qvqovn, /nkpo/ovovq ^Z,
n/. kpqovq isovo o /nkpo [Ctrl] kqi icovq o [z]. Fiq vq 0oss kqiv n ispvqoiq
oo qpqoknvio, /nkpo/ovnos:
% bg
Znsioon: Mn o/vss oo qpqoknvio ispvqois ou vpsicovqi siooo q o vpnon, .v.
o vi
5.4 Aioq Aispvqoiov ou Evouv Aiqkosi n Eks/ovqi oo
Hqpqoknvio
Oqv iq ispvqoiq sks/siqi oo qpqoknvio n vsi iqkosi, 8pioksqi os iq /ioq s vq
qviooivo qpi0 job. Fiq vq sis qun n /ioq, vpus:
% jobs
UNIX / Linux le:///Users/sonic/Desktop/UNIX/one le.html
27 of 42 05/02/2010 12:58 ..
Oq sis iq Eoo o nv qpqko:
[1] Suspended sleep 1000
[2] Running netscape
[3] Running matlab
Fiq vq Eskivnoss Eqv (oo pooknvio) iq ispvqoiq ou vsi iqkosi, /nkpo/ovnos:
% fg %!"#$%& job
Fiq qpsivq, viq vq Eskivnoss Eqv nv svo/n sleep 1000, /nkpo/ovnos:
% fg %1
Av vpuss fg vopi vq ooss qpi0 job, 0q sqvqpss oo pooknvio nv s/suqiq
ispvqoiq ou iqkuqs.
5.5 Tspqicovq iq Aispvqoiq
kill (trpoto n onootoKn onoto or o rpvooo)
Mspik op sivqi qqpqino vq spqioous iq ispvqoiq (qv viq qpsivq sks/si vq
qpovo 8pvo).
Fiq vq spqioss iq ispvqoiq ou sks/siqi oo pooknvio, ios ^C (control c). Fiq
qpsivq, sks/os:
% sleep 100
^C
Fiq vq spqioss iq ispvqoiq ou 8pioksqi oo qpqoknvio n vsi iqkosi, vpus:
% kill %!"#$%& job
Fiq qpsivq, sks/os:
% sleep 100 &
% jobs
Av viq qpsivq o qpi0 ou job sivqi 4, vpus:
% kill %4
Fiq vq s/vEss qv o qpqvo /siopvnos, s/vEs Eqv n /ioq ov jobs viq vq sis qv vsi
qqips0si n ispvqoiq.
UNIX / Linux le:///Users/sonic/Desktop/UNIX/one le.html
28 of 42 05/02/2010 12:58 ..
ps (kototoon rpvooo)
Evq//qkik, opsis vq spqioss iq ispvqoiq vpnoiooiovq ov qvqvvopioik qpi0
n (PID) kqi nv svo/n kill PID_number
% sleep 1000 &
% ps
PID TT S TIME COMMAND
20077 pts/5 S 0:05 sleep 1000
21563 pts/5 T 0:00 netscape
21873 pts/5 S 0:25 nedit
Fiq vq spqioss n ispvqoiq sleep 1000, /nkpo/ovnos:
% kill 20077
kqi siq /nkpo/ovnos ps Eqv viq vq sis qv vsi iqvpqsi q nv /ioq.
Av iq ispvqoiq qpvsiqi vq spqiosi, vpnoiooinos nv si/ovn -9:
% kill -9 20077
Znsioon: Asv opsis vq spqioss i ispvqois //ov vpnoov !!!
Hspi/nun
EvtoKn Znooo
ls -lag
Asivvsi q ikqioqq po8qon viq /q q qpvsiq
chmod [options] file
A//csi q ikqioqq po8qon ou ouvkskpivou qpvsiou
command &
Eks/si nv svo/n oo qpqoknvio
^C
Tspqicsi nv ispvqoiq ou sks/siqi oo pooknvio
^Z
Aiqksi n ispvqoiq ou sks/siqi oo pooknvio
bg
Osi oo qpqoknvio nv ispvqoiq ou vsi iqkosi
jobs
Asivvsi /ioq s q pvovq jobs
fg %1
Eqvqpsi oo pooknvio o job s qpi0 1
UNIX / Linux le:///Users/sonic/Desktop/UNIX/one le.html
29 of 42 05/02/2010 12:58 ..
kill %1
Tspqicsi o job s qpi0 1
ps
Aioq ov psvvov ispvqoiov
kill 26152
Tspqicsi nv ispvqoiq s qpi0 26152
UNIX: Tkto M0no
A//s Xpnois Evo/ ou UNIX
quota
Zs vq spi8//ov ovo/iko spvqonpiou, ouvn0o oi oouqo vouv iq0oio spiopiovo
vopo oo ioko viq q poooik ou qpvsiq. To vs0o oiki/si, q// iq uikn s/vion in
sivqi q 100 Mb. Av Essposs ov pokq0opiovo qu vopo (ou ovocsqi quota) vss
iq0ois 7 ps viq vq o8noss q spi qpvsiq.
Fiq vq s/vEss o vioo iq0oio oq vopo kq0o kqi oo vss kqqvq/oosi,
/nkpo/ovnos:
% quota -v
df
H svo/n df ov s/s0spo vopo ou vsi qosivsi oo oonq qpvsiov. Fiq qpsivq, viq vq
sis oo iq0oio vopo upvsi oo nvvnq oq vpus:
% df -h
du
H svo/n du sivvsi os kilobytes o vopo ou kqq/q8vsi k0s uokq/ovo. Eivqi vpnoin qv
vss Essposi o iq0oio vopo ou vsi kq0opiosi viq o /ovqpiqo oq kqi 0/ss vq sis
oio kq/ovo sivqi qu ou spivsi q spioospq qpvsiq. Zo poooik oq kq/ovo,
/nkpo/ovnos:
% du -s *
H si/ovn -s 0q siEsi vo nv spi/nun (o ouvo/ik vs0o) svo o * onqivsi i 0q /n0ov
uuiv /q q qpvsiq kqi oi kq/ovoi.
gzip
To pvpqq qu ouicsi qpvsiq, siovovq oi o vopo ou kqq/q8vouv oo ioko, kqi
UNIX / Linux le:///Users/sonic/Desktop/UNIX/one le.html
30 of 42 05/02/2010 12:58 ..
q sEoikovosi vopo. Fiq qpsivq, /nkpo/ovnos:
% ls -l science.txt
kqi onsioos o vs0o ou qpvsiou o qvqpsqi q nv svo/n ls -l. Fiq vq ouioss
siq o science.txt, /nkpo/ovnos:
% gzip science.txt
Au 0q o ouiosi kqi 0q o oo0snosi os vq qpvsio s o voq science.txt.gz
Fiq vq sis nv q//qvn oo vs0o, vpnoiooinos Eqv nv svo/n ls -l.
Fiq vq qoouioss o qpvsio, vpnoiooinos nv svo/n gunzip:
% gunzip science.txt.gz
zcat
H svo/n zcat qsikovicsi qpvsiq ouisovq s o gzip, vopi vq vpsicsqi vq q qoouiosi
poq.
% zcat science.txt.gz
Av o ksisvo povopsi o/ vpnvopq viq oq, spos nv Eoo oo n svo/n less:
% zcat science.txt.gz | less
file
H svo/n file qvqvvopicsi o sio ou qpvsiou qv/ovq s o spisvsvo ou, viq qpsivq
ksisvo (ASCII), oovpqiq, ouisovq sovq k.q. Fiq vq pss iq qvqop viq /q q
sin qpvsiov ou upvouv oov kq/ovo oq, /nkpo/ovnos:
% file *
diff
H svo/n qun ouvkpivsi q spisvsvq o qpvsiov kqi sivvsi i iqop sqE ou.
Yo0os i viq qpsivq vss o qpvsio file1, q//css koio nq ou, kqi o qo0nksss
o file2. Fiq vq sis i iqop sqE ou, vpus:
% diff file1 file2
Oi vpq ou Eskivvs s < qvqpovqi oo file1, svo qu ou Eskivvs s > sivvouv o file2.
UNIX / Linux le:///Users/sonic/Desktop/UNIX/one le.html
31 of 42 05/02/2010 12:58 ..
find
H svo/n qun uvvsi oou kqq/vou, viq qpvsiq kqi kqq/vou ou qipicouv s vq voq,
nsponviq, vs0o n ooiqnos //n qpspo vss oosi. Hpksiqi viq q/n svo/n, q//
vsi pq o// si/ov - opsis vq i sis onv qviooivn os/iq 8on0siq s nv svo/n
man find.
Fiq vq uEss viq /q q qpvsiq s nv kq/nEn .txt, Eskivovq q ov pvovq kq/ovo (.) kqi
ouvsvicovq os /ou ou uokqq/vou, uovovq o voq ou qpvsiou onv o0vn,
/nkpo/ovnos:
% find . -name "*.txt" -print
Fiq vq 8psis /q q qpvsiq s vs0o svq/spo q 1 Mb kqi vq sis q qos/oqq o /ioq
s /sospsi /npoopis, /nkpo/ovnos:
% find . -size +1M -ls
history
To k/uo kpqsi iq /ioq (vpovik qEivonvn) s i svo/ ou vss nn sks/osi. K0s
svo/n qipvsi vq qpi0 qv/ovq s n osip sk/son n:
% history (/(%#' +%#04+,05 *)#0/6))
Av vpnoiooisiqi o k/uo C (csh), opsis vq vpnoiooinoss o 0quqoik (!) viq vq
qvqkq/oss i svo/ s sko/o po.
% !! (')7,/&%& #&1 #*/*"#'('1 *)#0/31)
% !-3 (')7,/&%& #&1 #4(#&1 8+0 84$%9'#&1 *)#0/31)
% !5 (')7,/&%& #&1 8.8#&1 *)#0/31 '8$ #& /(%#')
% !grep (')7,/&%& #&1 #*/*"#'('1 *)#0/31 80" :*,+)7*+ * grep)
Mopsis vq quEnoss o vs0o n pooopivn qo0nksuon ou ioopiko, /nkpo/ovovq:
% set history=200
UNIX: Too M0no
7.1 Msqv/oion Hqkov Aovioiko oo UNIX
UNIX / Linux le:///Users/sonic/Desktop/UNIX/one le.html
32 of 42 05/02/2010 12:58 ..
Evq oonq UNIX opsi vq spivsi oo s/s0spo oo kqi sopik (iikno) /ovioik.
Fsvik sivqi uvqv vq vpnon vq kqs8osi kqi vq sqv/oiosi ikp qkq /ovioiko oo
ik ou kq/ovo. Au o /ovioik i0qvv sivqi vpnoio vo viq ouvkskpivq oq.
Fiq vq svkqqonoss /ovioik q ov nvqio koikq, sivqi qqpqinq koiq 8nqq.
Hpsi vq svoioss kqi vq kqs8oss ov nvqio koikq (ouvn0o ivsqi os ouisovn
opn)
Hpsi vq qoouioss ov nvqio koikq
Hpsi vq sqv/oioss ov nvqio koikq
Hpsi vq svkqqonoss o sks/oio qpvsio ou 0q pokusi
Hpsi vq iEss kois pu0iosi (path) oos vq opsi vq 8ps0si o sks/oio
A /q q qpqvo 8nqq, i0qvo o io oko/o sivqi n sqv/oion ou nvqiou koikq.
MrtovKmtton tou Hnvoou Kmko
O/s oi v/ooos uun/o siou psi vq sqpqov os iq opn ou opsi vq kqq/8si
o uo/ovion. Fiq qpsivq, o nvqio koikq os v/oooq C sqpsqi os iq v/oooq
vqn/o siou ou ovocsqi assembly. H assembly ou qpvsqi q qu o poo
oio sqpsqi oov qviksisvik koikq (object code) o ooio sivqi koiq koikq q
ooiq o uo/ovion opsi vq kqq/8si soq. To s/suqio oio onv sqv/oion
spi/q8vsi nv ovson (link) ou qviksisviko koikq s 8i8/io0nks koikq (libraries) oi
oois spivouv ouvkskpivs svooqovs ouvqpnosi (functions). To s/suqio qu oio
qpvsi vq sks/oio pvpqq.
H sk/son /ov quov ov 8nov s o vpi sivqi o//okn kqi pq q i uvqns ou
uiko vpnon. Euuvo, oi povpqqio vouv iEsi iq osip q spvq/siq kqi 8on0nik
povpqq ou q/ooiov nv iqikqoiq.
H EvtoKn make ko to Apvro Makefile
H svo/n make sipsi oou povpqqio vq iqvsipioov sv/q povpqq n os
povpqov. Bon0si onv qvuEn sv/ov povpqov kqqvpovq oiq koiq
ou povpqo vouv q//Esi kqi sqv/oicovq vo q nqq ou vouv sq8/n0si os
ovon s nv s/suqiq sqv/oion.
To pvpqq make iq8csi ou kqvvs ou 0q qko/ou0nosi viq nv sqv/oion q vq
qpvsio ksivou ou ovocsqi Makefile kqi o ooio 8pioksqi oov iio kq/ovo s q qpvsiq
ou nvqiou koikq. Hspivsi /npoopis ovsik s ov po sqv/oion ou /ovioiko,
.v. o siso 8s/ioooinon, qv 0/ous vq ouspi/n0ov oq oo sks/oio onvis
qooq/oon (debugging) k./.. Hspivsi sion /npoopis viq nv oo0soiq
UNIX / Linux le:///Users/sonic/Desktop/UNIX/one le.html
33 of 42 05/02/2010 12:58 ..
svkqoqon ou s/iko sks/oiou qpvsiou, ov os/iov 8on0siq (manual pages), ov qpvsiov
sovov, uvv 8i8/io0nkov ou vpnoiooiovqi q o sks/oio, qpvsiov pu0iosov k.q.
Mspik qkq qqiov vq q//Ess o Makefile vsipokivnq viq vq pu0ioss ov s/ik kq/ovo
svkqoqon kqi i0qvv kqi //s qpqpou. Cooo, o// qkq iqvovqi /ov s o
8on0nik pvpqq GNU configure.
configure
Kq0o quEvovqv oi qpq//qv ouonov UNIX, vivs uoko/spn n ouvvpqn
povpqov ou vq opov vq sks/soov os /s i iqvo. Oi povpqqio ouvv
sv sivqv po8qon os k0s iq0oio oonq, kqi q vqpqknpioik spikov ouonov
//qcqv q koon os koon. To oonq p0ion kqi sqv/oion GNU q/ooisi nv
sqv/oion povpqov ou iqvovqi s n opn nvqiou koikq. O/q q povpqq
sqv/oicovqi s n 8on0siq iq q/n kqi uooinvn iqikqoiq o 8nov. O vpnon
ou 0q sqv/oiosi o pvpqq sv vpsicsqi vq svkqqonosi siik spvq/siq viq vq sks/osi
qun nv spvqoiq.
H svo/n configure sivqi vq script viq o k/uo o ooio pooq0si vq 8psi i ooo i
ou qqiovqi os iops sq8/n ou ouonqo kqi vpnoiooiovqi kq n
sqv/oion. Xpnoiooisi qu i i viq vq nioupvnosi vq qpvsio Makefile os k0s
kq/ovo ou qkou.
O q/oospo po viq n sqv/oion sv qkou, sivqi:
cd oov kq/ovo ou spivsi ov nvqio koikq ou qkou. 1.
H/nkpo/ovnos ./configure viq vq vivsi p0ion ou qkou viq o oonq oq. 2.
H/nkpo/ovnos make viq vq sqv/oioss o qko. 3.
Hpoqipsik, /nkpo/ovnos make check viq vq pEss uvv iqvvooik (povpqq
s/vvou) ou pvovqi qci s o qko.
4.
H/nkpo/ovnos make install viq vq svkqqonoss q povpqq, q qpvsiq sovov kqi
nv sknpioon.
5.
Hpoqipsik, /nkpo/ovnos make clean viq vq iqvpuss q qpvsiq ou sks/oiou kqi
qviksisviko koikq q ov kq/ovo s o nvqio koikq ou povpqo.
6.
To 8on0nik pvpqq configure uoonpicsi iq sv/n oiki/iq si/ovov. Mopsis ouvn0o
vq vpnoiooinoss nv si/ovn --help viq vq sis iq /ioq s sviqpouos si/ov viq o
ouvkskpivo configure script ou 0q sks/oss.
Oi vs vsvikn oso si/ov ou pksiqi i0qvv vq vpnoiooinoss sivqi oi --prefix kqi
UNIX / Linux le:///Users/sonic/Desktop/UNIX/one le.html
34 of 42 05/02/2010 12:58 ..
--exec-prefix. Oi si/ov qu vpnoiooiovqi viq vq kq0opioouv ou kqq/vou
svkqoqon.
O kq/ovo ou ivsqi onv si/ovn --prefix 0q spivsi q qpvsiq ou sv vouv ovon s nv
qpviskovikn ou nvqvnqo, o qpvsiq sovov, sknpioon kqi pu0iosov
O kq/ovo ou ivsqi onv si/ovn --exec-prefix, (o ooio uik sivqi uokq/ovo ou
kqq/vou ou ivsqi oo --prefix), 0q spivsi qpvsiq ou sEqpovqi q o ouvkskpivo
nvvnq, o q sks/oiq.
7.2 Kq8qoq ou Hnvqiou Koikq
Fiq o ouvkskpivo qpsivq, 0q kqs8oous vq ikp EAAAK pvpqq, o ooio
sqpsi sqE iqopsikov ovov pnon.
Apvik, nioupvnos vq kq/ovo viq vq qo0nksoss ov nvqio koikq:
% mkdir download
Kqs8os q so ov nvqio koikq kqi qo0nksos ov oov kq/ovo ou nioupvnoqs.
7.3 Aoouios ov Hnvqio Koikq
Msqkivn0sis oov kq/ovo download kqi sis q spisvsvq ou.
% cd download
% ls -l
Oo opsis vq sis, o voq ou qpvsiou vsi kq/nEn tar.gz. H svo/n tar opsi vq
qo0nksosi qpks qpvsiq kqi kqq/vou os vq ovqik qpvsio tar. To qpvsio ou poksi
ouicsqi siq s n vpnon ou povpqo gzip, nioupvovq oi vq qpvsio tar.gz.
Apvik, qoouios o qpvsio vpnoiooiovq nv svo/n gunzip. Oq nioupvnoss oi vq
qpvsio s kq/nEn .tar.
% gunzip units-1.74.tar.gz
Hpovopnos siq os sEqvovn ov qpvsiov ou spivovqi oo qpvsio .tar.
% tar -xvf units-1.74.tar
Asis Eqv q spisvsvq ou kqq/vou download kqi siq sqkivn0sis oov uokq/ovo
units-1.74.
% cd units-1.74
UNIX / Linux le:///Users/sonic/Desktop/UNIX/one le.html
35 of 42 05/02/2010 12:58 ..
7.4 P0ion kqi Anioupviq ou Makefile
To poo pvq ou psi vq kvss sivqi vq iq8oss pooskik q qpvsiq README kqi
INSTALL. Hpksiqi viq q/ qpvsiq ksivou, kqi opsis vq q sis sko/q s nv svo/n less.
Tq qpvsiq qu spivouv onqvik /npoopis ovsik s n sqv/oion kqi sk/son ou
/ovioiko.
To qko units ou sqv/oicous vpnoiooisi o oonq GNU configure viq nv sqv/oion
ou nvqiou koikq. Oq psi vq kq0opioous ov kq/ovo svkqoqon, kq0o o
posi/svvo 0q 8pioksqi oou kpiou kqq/vou ou ouonqo ou sv vss
uvqnq svvpqn. Oq psi vq nioupvnoss vq kq/ovo svkqoqon oq oov
poooik oq kq/ovo.
% mkdir ~/units174
Eks/os siq o 8on0nik pvpqq configure, 0ovq quvpovq kqi ov kq/ovo ou 0q
vivsi n svkqoqon
% ./configure --prefix=$HOME/units174
Znsioon: H sq8/nn $HOME sivqi vq qpsivq sq8/nn spi8//ovo. H in ou
$HOME sivqi o /nps ovoi viq ov poooik oq kq/ovo. Fiq vq o iqioooss,
q/o /nkpo/ovnos:
% echo $HOME
viq vq sis q spisvsvq qun n sq8/nn. Oq i/noous spioospo viq i sq8/n
spi8//ovo os ssvo 0nq.
Av sks/sosi ooo o configure, 0q nioupvnosi vq qpvsio Makefile s /s i qqpqins
si/ov. Mopsis vq sis o Makefile qv 0/ss (vpnoiooinos kqi /i nv svo/n less), q//
nv q//Ess q spisvsvq ou.
7.5 Msqv/oion ou Hqkou
Mopsis opq vq Eskivnoss n sqv/oion ou qkou vpnoiooiovq nv svo/n make.
% make
Ms q vq - o /s (sEqpqi q nv qvnq ou uo/ovion oq), 0q nioupvn0ov q
sks/oiq. Mopsis vq s/vEss qv n sqv/oion vivs ooo, /nkpo/ovovq:
% make check
Av /q nvqv kq/, opsis opq vq svkqqonoss o qko.
UNIX / Linux le:///Users/sonic/Desktop/UNIX/one le.html
36 of 42 05/02/2010 12:58 ..
% make install
H svo/n qun 0q svkqqonosi o qko oov kq/ovo ~/units174 ou nioupvnoqs
ponvouvo.
7.6 Ek/son ou Aovioiko
Eiqos /ov oioi vq sks/oous o /ovioik (0sopovq i /q /siopvnoqv).
% cd ~/units174
Av sis q spisvsvq ou kqq/vou units, 0q 8psis vq qpi0 q uokqq/vou.
bin Tq sks/oiq qpvsiq
info Tsknpioon opooinvn kq//n/q viq o pvpqq GNU info
man Zs/is 8on0siq (man pages)
share Koivvpnoq qpvsiq sovov
Fiq vq sks/oss o pvpqq, sqkivn0sis oov kq/ovo bin kqi vpus
% ./units
Fiq qpsivq, sqpus 6 iq os pq.
You have: 6 feet
You want: metres
* 1.8288
Av pss nv qvnon 1.8288, ouvvqpnnpiq! To pvpqq /sioupvsi kqvovik.
Fiq vq sis ois ovs opsi vq sqpusi, koiEs o qpvsio sovov oov kq/ovo
share (n /ioq sivqi ovsik sv/n).
Fiq vq iq8oss nv /npn sknpioon, sqkivn0sis oov kq/ovo info kqi /nkpo/ovnos:
% info --file=units.info
7.7 Aovvoon ou Koikq q Avpnoq Tnqq
Kq nv qvuEn sv qkou /ovioiko, sivqi vpnoio viq ov povpqqion vq
ouspi/8si /npoopis qooq/oon oo sks/oio qpvsio ou poksi. Ms ov po
UNIX / Linux le:///Users/sonic/Desktop/UNIX/one le.html
37 of 42 05/02/2010 12:58 ..
qu, qv sqvioov po8/nqq kq nv sk/son ou povpqo, o povpqqion
opsi vq opoosi o sks/oio os vq kq//n/o pvpqq kqi vq 8psi q po8/nqq (bugs).
Au sivqi vpnoio viq ov povpqqion, q// vpnoo viq ov vpnon. Mopos vq
0sopnoous i o qko, q n oivn ou vsi s/sioosi kqi sivqi iq0oio viq kq8qoq vsi
nn okiqosi kqi iop0o0si. Cooo, qv sqv/oioqs o qpqvo qko, ouspi/8qs
oo s/ik sks/oio kqi i /npoopis qooq/oon. Miq kqi sivqi qi0qvo vq i
vpsiqoos o s/ikoi vpnos ou povpqo, opos vq i 8v/ous q o sks/oio.
Oq vous oi o /sovknq sv ikpspou sks/oiou qpvsiou ou 0q sks/siqi kqi /ivo
qvspq.
Oq os o vs0o ou sks/oiou qpvsiou piv kqi s n iqikqoiq. Msqkivn0sis oov
uokq/ovo bin ou kqq/vou svkqoqon ou povpqo units:
% cd ~/units174/bin
% ls -l
Oo opsis vq sis, o qpvsio sivqi vo q 100 kbytes os vs0o. Mopsis vq sis
spioosps /npoopis viq o qpvsio vpnoiooiovq nv svo/n file:
% file units
units: ELF 32-bit LSB executable, Intel 80386, version 1,
dynamically linked (uses shared libs), not stripped
Fiq vq iqvpuss q o sks/oio i /npoopis qooq/oon (debug) kqi qpi0ov
vpqov q o uqik qpvsio, vpnoiooinos nv svo/n strip:
% strip units
% ls -l
Oo opsis vq sis, o qpvsio opq sivqi /i 36 kbytes - o vq pio ou qpviko ou
sv0ou! Ao piq ou sks/oiou qpvsiou kqq/q8vovqv q i /npoopis
qooq/oon.
E/vEs Eqv i /npoopis ou qpvsiou.
% file units
units: ELF 32-bit LSB executable, Intel 80386, version 1,
dynamically linked (uses shared libs), stripped
Zs spik spioosi, opsis vq vpnoiooinoss nv svo/n make viq vq svkqqonoss
uqik qpvsiq q ooiq q nv qpvn vq nv spivouv /npoopis qooq/oon. Avi vq
vpuss make install, /nkpo/ovnos q/o make install-strip
UNIX / Linux le:///Users/sonic/Desktop/UNIX/one le.html
38 of 42 05/02/2010 12:58 ..

UNIX: Ovoo M0no
8.1 Msq8/n oo UNIX
Oi sq8/n sivqi vq po vq spoous /npoopis q o k/uo oq povpqq
qv q sks/os. Tq povpqq koicouv "o spi8//ov" viq ouvkskpivs sq8/n kqi qv
i 8pouv, vpnoiooiov i i ou. Mspik q i sq8/n opicovqi q o oonq,
//s q so kqi //s q o k/uo n ooionos pvpqq opovsi vq //o
pvpqq.
Oi uooinvs sq8/n ou UNIX vopicovqi os o kqnvopis, i sq8/n
spi8//ovo kqi i sq8/n ks/ou. Zs vsvik vpq, oi sq8/n ks/ou
sqpcovqi vo oo k/uo ou sks/siqi n sovn oivn kqi vpnoiooiovqi viq vq
0oouv ouv0nks spvqois viq koio ikp vpovik ionq. Oi sq8/n spi8//ovo vouv
svq/spn sipqon, kqi qu ou i0svqi kq nv siooo oq oo oonq sivqi vkups viq
oo ionq qpqvss ouvssvoi. Kq o8qon, oi sq8/n spi8//ovo vouv
ovqq s KE4AAAA FPAMMATA svo oi sq8/n ks/ou s ikp.
8.2 Msq8/n Hspi8//ovo
Evq qpsivq sq8/nn spi8//ovo sivqi n sq8/nn OSTYPE. H in n sivqi o
/sioupvik oonq ou vpnoiooisis. H/nkpo/ovnos:
% echo $OSTYPE
Mspik qkq qpqsivqq sq8/nov spi8//ovo sivqi:
USER (o voq vpnon oq)
HOME (n /npn iqpon viq ov poooik oq kq/ovo)
HOST (o voq ou uo/ovion ou vpnoiooisis)
ARCH (n qpviskovikn ssEspvqon ou uo/ovion oq)
DISPLAY (o voq n o0vn ou vpnoiooisiqi q q X Windows)
PRINTER (o skuon ou vsqi spvqois skoon q posi/ovn)
PATH (oi kq/ovoi ou uvvsi o k/uo viq vq svoiosi iq svo/n)
Epron tmv Tprvvtmv Tmv tmv MrtoKntmv
UNIX / Linux le:///Users/sonic/Desktop/UNIX/one le.html
39 of 42 05/02/2010 12:58 ..
Oi sq8/n ou ENVIRONMENT (spi8//ovo) opov vq s0ov s nv setenv kqi vq
qsikovioov s n vpnon n printenv n env. Mopov vq iqvpqov s nv vpnon n
unsetenv.
Fiq vq sis i i /ov quov ov sq8/nov, /nkpo/ovnos:
% printenv | less
8.3 Msq8/n Ks/ou
Evq qpsivq sq8/nn ou ks/ou, sivqi n sq8/nn ou ovsicsqi s nv npnon
ioopiko. H in qun n sq8/nn qvqpsqi oo os svo/ 0q 0uqi o k/uo,
sipovq oi oo vpnon vq qvqpEsi oi svo/ ou vsi nn sks/osi. H/nkpo/ovnos:
% echo $history
Hspioospq qpqsivqq sq8/nov ks/ou sivqi:
cwd (o pvov kq/ovo oq)
home (n iqpon viq ov poooik oq kq/ovo)
path (oi kq/ovoi ou 0q uEsi o k/uo viq vq 8psi iq svo/n)
prompt (o ksisvo ou sivvsi o popon o k/uo oq viq vq siovss iq svo/n)
shell (o k/uo s o ooio kvqs login oo oonq)
Epron Tprvvtmv Tmv Autmv tmv MrtoKntmv
Oi sq8/n ou ks/ou opov vq s0ov kqi vq qsikovioov vpnoiooiovq nv svo/n
set. Mopov sion vq iqvpqov s nv svo/n unset command.
Fiq vq sis i i /ov quov ov sq8/nov, /nkpo/ovnos:
% set | less
TrKk noo rvo n ooop rtof path ko PATH;
Zs vsvik vpq, oi sq8/n spi8//ovo kqi ks/ou ou vouv o iio voq (sk q
o vsvov i oi sv sivqi ksq/qiq kqi oi s ikp) sivqi vopio kqi qvsEpns sk q o
vsvov i i0qvv vouv i iis qpvik i. Cooo upvouv kqi sEqiposi.
K0s op ou q//couv oi sq8/n ks/ou home, user kqi term qvqvsovovqi kqi oi
qviooivs sq8/n spi8//ovo HOME, USER kqi TERM. Cooo qv qvqvso0ov poq oi
sq8/n spi8//ovo, oi qviooivs ou ks/ou sv q//couv in.
UNIX / Linux le:///Users/sonic/Desktop/UNIX/one le.html
40 of 42 05/02/2010 12:58 ..
Oi sq8/n PATH kqi path kq0opicouv ou kqq/vou ou qvivvsovqi viq nv spson svo/ov
kqi povpqov. Kqi oi o sq8/n vos qvipooosouv nv iiq /ioq kqq/vov -
oiq q i o kqi qv q//Esi, n //n qvqvsovsqi quqq.
8.4 Xpnoiooiovq kqi Oovq Msq8/n
K0s op ou siopvsos oo UNIX oonq oq, o oonq uvvsi oov poooik oq
kq/ovo viq qpvsiq qpvikooinon. Oi /npoopis os qu q qpvsiq vpnoiooiovqi viq vq
pu0ioouv i qpqpou ou poooiko oq spi8//ovo. Tq ks/n C kqi TC
vpnoiooiov o qpvsiq, q .login kqi .cshrc (pooEs i kqi q o qpvsiq Eskivov s s/siq).
Kq nv siooo oq, o k/uo C iq8csi poq o .cshrc kqi s o .login
To .login vpnoiooisiqi viq vq 0osi pu0iosi ou iovouv viq /n nv ovoo (session) kqi viq
vq sks/osi /sioupvis ou qqiovqi vo on iqikqoiq sioou.
To .cshrc vpnoiooisiqi viq vq 0osi pu0iosi kqi vq sks/osi /sioupvis ou ovsicovqi s o
k/uo kqi psi vq vivovqi k0s op ou Eskiv - ovsq qv sivqi o k/uo sioou n vi).
Zs vsvik vpq, sivqi ooospo vq pu0icovqi oi sq8/n ENVIRONMENT (spi8//ovo)
oo qpvsio .login kqi oi sq8/n SHELL (ks/ou) oo .cshrc.
HPOZOXH: HOTE n 8/ss svo/ ou svspvooiov o vpqik spi8//ov oq qpvsiq
.cshrc n .login.
8.5 Oovq Msq8/n Hspi8//ovo oo Apvsio .cshrc
Av viq qpsivq 0/ss vq q//Ess ov qpi0 ov svo/ov ks/ou ou qo0nksovqi on
/ioq ioopiko, 0q psi vq 0oss iq vq in on sq8/nn ou ks/ou ou ovocsqi
history. H posi/svvn in sivqi 100, q// opsis vq nv quEnoss qv 0/ss.
% set history = 200
E/vEs i n qpqvo svo/n /siopvnos:
% echo $history
To qpqvo oooo 0si nv sq8/nn vo viq on opq sks/siqi o pvov k/uo. Av
qvoiEss vq vo qp0upo xterm (viq qpsivq), 0q vsi nv q/i in n sq8/nn. Fiq vq
q//Ess qun nv in MONIMA 0q psi vq poo0oss nv svo/n set oq oo qpvsio .cshrc.
AvoiEs o qpvsio .cshrc os vq ouvkn ksivou. Mopsis vq vpnoiooinoss koio ouvkn
ou oq qpvsi o vpqik spi8//ov oq n vq sko/o ouvkn viq nv kovo/q (.v. ov ee).
% ee ~/.cshrc
UNIX / Linux le:///Users/sonic/Desktop/UNIX/one le.html
41 of 42 05/02/2010 12:58 ..
Hpoo0os nv qpqko vpqn META n /ioq ov //ov svo/ov.
set history = 200
Ao0nksos o qpvsio kqi qvqvkos o k/uo vq Eqvqiq8osi o qpvsio .cshrc
vpnoiooiovq nv svo/n ou ks/ou source.
% source .cshrc
E/vEs n ooon /sioupviq, /nkpo/ovovq:
% echo $history
8.6 P0ion ou path
Oqv /nkpo/ovsis iq svo/n, n sq8/nn path (n PATH) opicsi os oiou kqq/vou 0q uEsi
o k/uo viq vq nv 8psi. Av o oonq siopusi vq nvuq ou ou "command: Command
not found", onqivsi sis i n svo/n sv upvsi kq0/ou oo oonq, n q/ i sv upvsi oo
path oq.
Fiq qpsivq, viq vq sks/oss o pvpqq units psi sis vq opioss qsu0siq n /npn
iqpon po qu (~/units174/bin/units) n vq vss poo0osi oo path oq ov kq/ovo
~/units174/bin.
Mopsis vq ov poo0oss oo /o ou upvovo path (o ooio qvipooossqi q o
$path) vpnoiooiovq nv qpqko svo/n:
% set path = ($path ~/units174/bin)
E/vEs n /sioupviq ou qpqvo, pooq0ovq vq sks/oss o units svo 8pioksos os
ooionos kq/ovo.
% cd
% units
Fiq vq kvss qun nv q//qvn oo path MONMH, poo0os nv qpqko vpqn oo qpvsio
.cshrc META n /ioq ov u/oiov svo/ov.
set path = ($path ~/units174/bin)
UNIX / Linux le:///Users/sonic/Desktop/UNIX/one le.html
42 of 42 05/02/2010 12:58 ..

You might also like