⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 sh.1

📁 操作系统设计与实现源码
💻 1
📖 第 1 页 / 共 2 页
字号:
%!PS-Adobe-1.0%%Creator: devps (Pipeline Associates, Inc.)%%CreationDate: Fri Sep 13 13:04:25 1996%%Pages: (atend)%%DocumentFonts: (atend)/devps 180 dict def devps begin/res 10.000000 def/y_offset 843 def/X{exch}bind def/mm {transform round X round X itransform} bind def/r{rmoveto}bind def/m{moveto}bind def/l{lineto}bind def/rl{rlineto}bind def/st{stroke}bind def/gs{gsave}bind def/gr{grestore}bind def/cp{currentpoint}bind def/np{newpath}bind def/ct{curveto}bind defsystemdict /setpacking known { /savepacking currentpacking def true setpacking } if/m0{0 0 moveto}bind def/xc{//res div}bind def/yc{//res neg div //y_offset add}bind def/lc{yc X xc X l st}bind def/mc{yc X xc X m}bind def/el{gs /a X def a div 1 X scale cp np a xc 2 div 0 360 arc st gr}bind def/ar{cp 7 2 roll np xc 5 1 roll atan 3 1 roll atan X arc st}bind def/sp{yc X xc X 6 2 roll yc X xc X 6 2 roll yc X xc X 6 2 roll ct}bind def/V{//res neg div //y_offset addcurrentpoint pop Xm}bind def/H{//res div0 transform X round X itransform popcurrentpoint X popmoveto}bind def/h{//res div 0 r}bind def/v{//res neg div 0 X r}bind def/S{X H show}bind def/A{H //res div 1 index stringwidth pop sub 1 index length div 0 3 2 roll ashow}bind def/psize 10 def/height 0 def/cheight { height 0 ne { height } { psize } ifelse } bind def/slant 0 def/FF{findfont X dup 30 div 0 mm pop setlinewidth /psize X def    [psize 0 cheight slant sin slant cos div mul cheight 0 0]    makefont setfont}bind def/shade{gs /dy X def /dx X def np m 0 /dy rl /dx 0 rl 0 /dy neg rl /dx neg 0 rl closepath .9 setgray fillgr}bind def1 setlinecap/resolution res 72 mul def/startFig {	/SavedState save def	userdict maxlength dict begin	currentpoint transform	DocumentInitState setmiterlimit setgray setdash setlinejoin setlinecap		setlinewidth setmatrix	itransform moveto	/ury exch def	/urx exch def	/lly exch def	/llx exch def	/y exch 72 mul resolution div def	/x exch 72 mul resolution div def		currentpoint /cy exch def /cx exch def	/sx x urx llx sub div def	/sy y ury lly sub div def	sx sy scale	cx sx div llx sub	cy sy div ury sub translate		/DefFigCTM matrix currentmatrix def	/initmatrix {		DefFigCTM setmatrix	} def	/defaultmatrix {		DefFigCTM exch copy	} def	/initgraphics {		DocumentInitState setmiterlimit setgray setdash 			setlinejoin setlinecap setlinewidth setmatrix		DefFigCTM setmatrix	} def	/showpage {		initgraphics	} def}bind  def/clipFig {	currentpoint 6 2 roll	newpath 4 copy	4 2 roll moveto	6 -1 roll exch lineto	exch lineto	exch lineto	closepath clip	newpath	moveto}bind  def/doclip { llx lly urx ury clipFig } def/endFig {	end SavedState restore}bind  def/globalstart {	fontnum psize slant height resolution currentpoint 	pagesave restore gsave }bind  def/globalend {	grestore moveto	/resolution exch def /height exch def	/slant exch def /psize exch def /fontnum exch def	F	/pagesave save def}bind  def/fontnum 1 def systemdict /setpacking known { savepacking setpacking} ifend/BP{save mark devps begin m0/DocumentInitState [ matrix currentmatrix currentlinewidth currentlinecapcurrentlinejoin currentdash currentgray currentmiterlimit ] cvx def}bind def/EP{end cleartomark restore showpage}def/Encoding-1 256 array def0 1 255 {Encoding-1 exch /.notdef put} forEncoding-1 8#301 StandardEncoding 8#101 26 getinterval putinterval %A-BEncoding-1 8#341 StandardEncoding 8#141 26 getinterval putinterval %a-bEncoding-1 8#241 StandardEncoding 8#301 16 getinterval putinterval %accentsEncoding-1 8#373 StandardEncoding 8#365 1 getinterval putinterval %dotlessiEncoding-1dup 8#41 /copyright putdup 8#42 /registered putdup 8#43 /trademark putdup 8#44 /logicalnot putdup 8#45 /Eth putdup 8#46 /eth putdup 8#47 /Thorn putdup 8#50 /thorn putdup 8#51 /brokenbar putdup 8#52 /degree putdup 8#53 /divide putdup 8#54 /multiply putdup 8#55 /minus putdup 8#56 /onehalf putdup 8#57 /onequarter putdup 8#60 /threequarters putdup 8#101 /Aacute putdup 8#102 /Acircumflex putdup 8#103 /Adieresis putdup 8#104 /Agrave putdup 8#105 /Aring putdup 8#106 /Atilde putdup 8#107 /Ccedilla putdup 8#110 /Eacute putdup 8#111 /Ecircumflex putdup 8#112 /Edieresis putdup 8#113 /Egrave putdup 8#114 /Iacute putdup 8#115 /Icircumflex putdup 8#116 /Idieresis putdup 8#117 /Igrave putdup 8#120 /Ntilde putdup 8#121 /Oacute putdup 8#122 /Ocircumflex putdup 8#123 /Odieresis putdup 8#124 /Ograve putdup 8#125 /Otilde putdup 8#126 /Scaron putdup 8#127 /Uacute putdup 8#130 /Ucircumflex putdup 8#131 /Udieresis putdup 8#132 /Ugrave putdup 8#133 /Ydieresis putdup 8#134 /Zcaron putdup 8#135 /aacute putdup 8#136 /acircumflex putdup 8#137 /adieresis putdup 8#140 /agrave putdup 8#141 /aring putdup 8#142 /atilde putdup 8#143 /ccedilla putdup 8#144 /eacute putdup 8#145 /ecircumflex putdup 8#146 /edieresis putdup 8#147 /egrave putdup 8#150 /iacute putdup 8#151 /icircumflex putdup 8#152 /idieresis putdup 8#153 /igrave putdup 8#154 /ntilde putdup 8#155 /oacute putdup 8#156 /ocircumflex putdup 8#157 /odieresis putdup 8#160 /ograve putdup 8#161 /otilde putdup 8#162 /scaron putdup 8#163 /uacute putdup 8#164 /ucircumflex putdup 8#165 /udieresis putdup 8#166 /ugrave putdup 8#167 /ydieresis putdup 8#170 /zcaron putpop/Enc-dict 30 dict defEnc-dict /tmpstr1 50 string putEnc-dict /tmpstr2 50 string putEnc-dict /tmpstr3 50 string dup (Encoding-) exch cvs pop put/AEnc-def { % arguments: the original font's name, encoding nrEnc-dict begintmpstr2 cvs /Enc-no exch def % Remember the number in a stringdup /OrigName exch def % remember the namefindfont dup maxlength dict /newdict exch def % get dictionary for new font{ exch dup /FID ne   { exch newdict 3 1 roll put }   { pop pop } % Ignore FID   ifelse} forallnewdict begin/Encoding  tmpstr3 9 Enc-no putinterval tmpstr3 0 9 Enc-no length add getinterval  cvn load  def % Replace encodingcurrentdict /UniqueID known{ /UniqueID UniqueID Enc-no cvi 49999 mul add def } if % Derive New UniqueIDend % newdict/FNlength OrigName tmpstr1 cvs length def % convert name, remember lengthFNlength 1 add Enc-no length add stringdup 0 OrigName tmpstr1 cvs putintervaldup FNlength (-) putintervaldup FNlength 1 add Enc-no putintervaldup 0 tmpstr1 0 FNlength getinterval putinterval % Add old namecvn dup newdict /FontName 3 2 roll put newdict definefontend % Enc-dict} def/Times-Roman 1 AEnc-def pop/R-1{/Times-Roman-1 FF}def/Times-Bold 1 AEnc-def pop/B-1{/Times-Bold-1 FF}def/R{/Times-Roman FF}def/B{/Times-Bold FF}def/I{/Times-Italic FF}def/Y{/Symbol FF}def%%EndProlog%%Page: 1 1BP/slant 0 def/height 0 def480 V10 R720(SH)S857(\()S899(1)S957(\))S2696(Eighth)S(Edition)296 2989 A4990(SH)S5127(\()S5169(1)S5227(\))S960 V9 R720(N)S722(NA)S790(AM)S858(ME)S940(E)S1080 V10 R1080(sh,)S1229(.,)S1314(break,)S1598(case,)S1832(cd,)S1987(continue,)S2393(eval,)S2621(exec,)S2866(exit,)S(export,)282 3077 A3394(for,)S3572(if,)S3695(read,)S(readonly,)377 3930 A4343(set,)S4516(shift,)S4756(trap,)S4974(umask,)S1200 V1080(wait,)S1304(while)S10 R-11553(-)S10 R1635(shell)S1368 V9 R720(S)S722(SY)S774(YN)S842(NO)S910(OP)S978(PS)S1030(SI)S1082(IS)S1115(S)S1488 V10 B1080(sh)S10 R1213([)S10 B-11247(-)S10 B(eiknqstvxu)470 1304 A10 R1774(])S1846([)S10 B-11880(-)S10 B1937(c)S10 I2020(str)S10 R2126(])S10 B2198([)S10 I2232(\256le)S10 R2355(])S1656 V9 R720(O)S722(OP)S790(PT)S842(TI)S900(IO)S933(ON)S1001(NS)S1069(S)S1776 V10 B-11080(-)S10 B1137(c)S10 R1440(Execute)S1790(the)S1938(commands)S2398(in)S10 I2501(str)S1944 V10 B-11080(-)S10 B1137(e)S10 R1440(Quit)S1644(on)S1769(error)S2112 V10 B-11080(-)S10 B1137(i)S10 R1440(Interactive)S1897(mode;)S(ignore)257 2173 A2455(QUIT,)S2747(TERMINATE,)S3381(INTERRUPT)S2280 V10 B-11080(-)S10 B1137(k)S10 R(Look)212 1440 A1677(for)S1820(name=value)S2338(everywhere)S2834(on)S2959(command)S3380(line)S2448 V10 B-11080(-)S10 B1137(n)S10 R1440(Do)S1588(not)S1741(execute)S2074(commands)S2616 V10 B-11080(-)S10 B1137(q)S10 R1440(Change)S1772(q\257ag)S1998(from)S2219(sig_ign)S2539(to)S(sig_del)290 2642 A2784 V10 B-11080(-)S10 B1137(s)S10 R1440(Read)S1672(commands)S2132(from)S2353(standard)S(input)206 2719 A2952 V10 B-11080(-)S10 B1137(t)S10 R1440(Exit)S1633(after)S1844(reading)S2171(and)S2341(executing)S2757(one)S2927(command)S3120 V10 B-11080(-)S10 B1137(v)S10 R1440(Echo)S(input)206 1672 A1903(lines)S2118(as)S2227(they)S2425(are)S2574(read)S3288 V10 B-11080(-)S10 B1137(x)S10 R(Trace)231 1440 A3456 V10 B-11080(-)S10 B1137(u)S10 R1440(Unset)S1700(variables)S3624 V9 R720(E)S722(EX)S780(XA)S848(AM)S916(MP)S998(PL)S1050(LE)S1108(ES)S1166(S)S3744 V10 B1080(sh)S1200(script)S10 R2080(#)S2155(Run)S2347(a)S2417(shell)S2632(script)S3912 V9 R720(D)S722(DE)S790(ES)S848(SC)S900(CR)S962(RI)S1024(IP)S1057(PT)S1109(TI)S1167(IO)S1200(ON)S1268(N)S4032 V10 I1080(Sh)S10 R1221(is)S1329(the)S1493(shell,)S1749(which)S2036(forms)S2312(the)S2476(user's)S2758(main)S(interface)354 3000 A3395(with)S3615(the)S3779(system.)S4149(On)S4313(startup,)S4653(the)S4817(shell)S5048(reads)S4152 V1080(/etc/pro\256le)S1553(and)S1734($HOME/.pro\256le,)S2458(if)S2556(they)S2765(exist,)S3016(and)S3197(executes)S3580(any)S3761(commands)S4232(they)S4441(contain.)S4823(The)S5016(Minix)S4272 V1080(shell)S1296(has)S1456(most)S1678(of)S1789(the)S1939(features)S2286(of)S2397(the)S2547(V7)S2697(\(Bourne\))S3088(shell,)S3330(including)S3736(redirection)S4200(of)S(input)206 4311 A4544(and)S4716(output,)S5024(pipes,)S4392 V1080(magic)S1356(characters,)S(background)474 1821 A2325(processes,)S2766(and)S2941(shell)S3161(scripts.)S3504(A)S3607(brief)S3828(summary)S4232(follows,)S4589(but)S4747(whole)S(books)239 5022 A4512 V1080(have)S1295(been)S(written)286 1510 A1821(on)S1946(shell)S2161(programming)S2733(alone.)S4680 V1080(Some)S1334(of)S1443(the)S1591(more)S1823(common)S2199(notations)S2592(are:)S4848 V1260(date)S2700(#)S2844(Regular)S3188(command)S4968 V1260(sort)S1436(<\256le)S2700(#)S2844(Redirect)S10 I3211(stdin)S10 R3431(\(standard)S(input\))240 3831 A5088 V1260(sort)S1436(<\256le1)S1722(>\256le2)S2700(#)S2844(Redirect)S10 I3211(stdin)S10 R3431(and)S10 I(stdout)245 3601 A5208 V10 R1260(cc)S1375(\256le.c)S1624(2>error)S2700(#)S2844(Redirect)S10 I3211(stderr)S5328 V10 R1260(a.out)S1483(>f)S1624(2>&1)S2700(#)S2844(Combine)S3237(standard)S3603(output)S3884(and)S4054(standard)S4420(error)S5448 V1260(sort)S1436(<\256le1)S1722(>>\256le2)S2700(#)S2844(Append)S3187(output)S3468(to)S10 I3571(\256le2)S5568 V10 R1260(sort)S1436(<\256le1)S1722(>\256le2)S1983(&)S2700(#)S(Background)491 2844 A3360(job)S5688 V1260(\(ls)S10 R-11386(-)S10 R1443(l;)S1524(a.out\))S1781(&)S2700(#)S2844(Run)S3036(two)S(background)474 3212 A3711(commands)S4171(sequentially)S5808 V1260(sort)S1436(<\256le)S1647(|)S1692(wc)S2700(#)S2844(Two-process)S3390(pipeline)S5928 V1260(sort)S1436(<f)S1552(|)S1597(uniq)S1800(|)S1845(wc)S2700(#)S2844(Three-process)S3441(pipeline)S6048 V1260(ls)S10 R-11352(-)S10 R1409(l)S1462(*.c)S2700(#)S2844(List)S3026(all)S3152(\256les)S3345(ending)S3643(in)S10 I3746(.c)S6168 V10 R1260(ls)S10 R-11352(-)S10 R1409(l)S1462([)S10 I1496(a-c)S10 R1625(]*)S2700(#)S2844(List)S3026(all)S3152(\256les)S3345(beginning)S3771(with)S10 I3975(a)S10 R4025(,)S10 I4075(b)S10 R4125(,)S4175(or)S10 I4284(c)S6288 V10 R1260(ls)S10 R-11352(-)S10 R1409(l)S1462(?)S2700(#)S2844(List)S3026(all)S3152(one-character)S3727(\256le)S3881(names)S6408 V1260(ls)S1352(\\?)S2700(#)S2844(List)S3026(the)S3174(\256le)S3328(whose)S3610(name)S3853(is)S3945(question)S4310(mark)S6528 V1260(ls)S10 Y1352(\242)S10 R(???)135 1377 A10 Y1512(\242)S10 R2700(#)S2844(List)S3026(the)S3174(\256le)S3328(whose)S3610(name)S3853(is)S3945(three)S4172(question)S4537(marks)S6648 V1260(v=/usr/ast)S2700(#)S2844(Set)S2998(shell)S3213(variable)S10 I3563(v)S6768 V10 R1260(ls)S10 R-11352(-)S10 R1409(l)S1462($v)S2700(#)S2844(Use)S3026(shell)S3241(variable)S10 I3591(v)S6888 V10 R1260(PS1=)S

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -