1. Trang chủ
  2. » Tất cả

Viết shell script như thế nào

18 306 0
Tài liệu đã được kiểm tra trùng lặp

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 18
Dung lượng 158,56 KB

Nội dung

SHELL _LINUX      !"#$%&'(")*+&  ,-.%/& ,-011/& 2+& 34&'&  !/& /& 5/&  3"4-6788&!" 9:55! 788-;&<)  != 8>  != 7%? '  8>7%?<@A-B#C&DE%!" ! " F8"%788 #"$  $>GH)7-!!87I@AJK"%L"$;)M@A$N#O+ !  $M@PQ! RPQ!$ 34&'&/$S'P  T6G(")@P*$788 HI F/U@D"N#O+V"WHXI H I LB@A#U;!""N#''P$ H2I $&W>Y!YM HZI #!'-6$'P[\KK!" !?SV!?S]] H1I LB^_`@@V/$ # $%& R")%"'P$_4&'&!" ,/X$  S? 7, ' () a@Pbc_'P$= 34&'&7d&ed"f_$=e 3'& g#B#O+%"Gb g7&h&"Y#O+7!""i"f i!!87H$"BI i!#&!7 i#B%"Gb i%"Gb i*@D"b i! ii"i 7j7k-6!!i!iiGi] SHELL_LINUX 1-18 1 SHELL _LINUX * +,- ./012 34056̉ ̣  34&'&7%&&&h&'&  7%&.2 7%& j 7%&?5 7%& ?l2 7%&?i`2 7m7%&n.2m oSm7&%,o.2m ./012 3407580̉ ̣ pqrstruŕ ̣ 87koS,o.2] 87ko.S2] 87koS,-`,] ./012 3409::;;;<<̉ ̣ vqrstrú ̣ oS,HHo.2II oS,HH,-`,II   7&% ?l2 ?-2 7&%?i`2&h&'W_+i`#B&`@&W>#O+!)$ ab"G/@Aw*"788_#-68>@A@VY! "mm H#B&"')@xyI788<+8>@ !Sm7&%?i`2m !<'P8;?%2S2? #$("!-;7,! = >?@A@BCDEFG 328"!" a" F/ zQ! k [')#h& N-)')#h&@A%7-8;Y#O+/ > x [')@ YN-"')@OQ!#B@{ m [')A +8>  7kB-!)8;!7]#B@AB-!)8;-) 7kB-!)8;m!7m]<!;)'B-!)!7N-"')Amm H +I-JK >V@PK"%_#-68>V&+_* 8|'P@%'@P%7-8> V&@+;B#B HI[$"'P*8;?Ho7I8>+;B H I[$"'P*#'?Ho7I#B;B }'P@~|8;E%!" •)8;-$;@$@A'P*€!-68>!)&^•@_‚Dw $@V>ƒ€!788L  $"%'„87#B…|/@Q! 9-"#†„87 97,^<!-;-6'P#'? M ()NOP-QRS&,TUV a@8)Y8>"•&‡;&-;8";$ SHELL_LINUX 2-18 2 SHELL _LINUX 34&'&7!!! !2=![ 7!#B!-G'P<@A!$,•EˆK‰  7! !S],•EˆK‰] M"i&h&%"Gb@•&$&Y8>"7![$"7!j<#B OQ!@  97!! 9•&;„87i  787 97k,!]#$("„87787 [|!-G!^ 97!j! 9•&;„87i 97k,!]#$("„87i K>7!@@~„87[$"„87!*"b‚b@A' $[$"7!|*"$H7!!! =I7!<+!;$,|Š‹@'Y 8>"'$TV@P,|Š‹8;#U  97!!Œ!!X„87 [$"„87*"b 97!!! Œ!!X„87 L@_-f|$<!"f|@A'>J|#UH,|Š‹I#B&|b_$ "G|<@A!;6&Db8|€!b •)8;-$;@@~;6„87^3|(")$Nb8V&#B^^ †877!87  7,87 7Œ!!X„87 ‹w,|Š‹H|7!8Š87‹7&!!I@'-6b&"€!7!_$"#B-"G-V @P8;#U8;-$;^•7-@&!" 7k87#7!!"7] Ž|Š‹S,|Š‹•|Š‹S 9!#"&8||Š‹;''P-„87575&!†@'> 9'M|!"/'|Š‹8; †877!!-7&!†"„"88!-77  7k,!-7,„"88!-7] 7Œ575&!† 9|5Ž77 |Š‹S,Ž|Š‹ 98||Š‹!@D" [$"@V|Š‹!)b8V&#BD!#"&|Š‹ †87|Š‹S7!!-7&!†"„"88!-77  7k,!-7,„"88!-7] 7Œ575&!† |Š‹•#B@{ W +X) SHELL_LINUX 3-18 3 SHELL _LINUX }w!&/-)78_@+&;)!D")*; !-G!" ,-)787 F@ -)788;/& 7!-G")*;& !-G! F788_")%"@$Y!-G!" -)788;,? 78;, 8;, ;$,9H788I<'P H !-G7;I8)' !-GN'w$,V,` 10.Y D"$8>@*"%"#$("!-;V8D)Y8>";&-|K"% b%"Y8>";87;@~Y8>"87 887!-79#$("8>8;87/87!-7 32#O>"778;_; HILO>" 4&'&8"%g !87!-7 ""&"!8>!87[$"87|<@b$"87!87-| H ILO>" 4&'&8"%g !87!-7 ""&"!8>;"G|87$"87@|_b$"87!|87- H2ILO>" 4&'&8"%g !87!-7 8)Y8>"8"%g !87!-7!);- 34&'& ! ! "&"! !<8;Y8>";! ! ,7& Z[\30 !0]0^\208_2`0.[577 1. +Dab qrqr r Ăq pqrstr Â7H?I 75F"7 ? [go7 [5!87 ÊÔƠrƯĐƠrăărââârêôrơ-rđr rơr 2. cde20fde 30dg0 trrur 7 ! ! SHELL_LINUX 4-18 4 SHELL _LINUX Ăràrur sqq rrtrảrrãqrtrtrá rrrạằrqrẳrqá rẵẵ s pqrstrurĂqrẳràrrắqrá rr U LU 905`[h09i000j09i0kl07\m056d80n8l82n0`2l07e 3[0`l8 átrá rrrvárrạrrằr r rđ Ărâr rqràẳrvqár ẳrtru 9:55! !, 7 rr rqrÔrƠrqẵrô-rvrq rr rđ Ăr 7%? # ke 3[085n80[lm0`\208_2`0o0pde208[/`0q ặá rrảrôtrtrầrêqátrẳrẩrst ĂràárơqáẵrrÔrêqátrẳrràt Ăr-rqƠr átràt Ăr r várƠr Ăẳrqrrđrơr trrurrêqátrẳrrẫấậrầrêqátrẳrẩ pqrstrur r5n80pde208[/` o0pde208[/`0q |7k,]j? F7 rrÔr r r dk,]j?e 7 rÔr r r èqátrẳrơqáẵrrẵrvqárvqru ạÔằârđr Ăt-á r ạĐằârẻẳ Ărơqátrắq ạƯằârtđq rẳ 788 & r Ăq đr |788 ặá r ầrêqátrẳrẩ g7( r rêả Ă 1SSn |71j7(n |d1j7(ne g7 ẽđ Ărêả Ă 1:Sn |71j7n |d1j7ne g8 ẻr 1n |71j8n |d1j8ne g87 ẻr r-rêả Ă 1Sn |71j87n |d1j87ne g ặ r 1n |71jn |d1jne g7 ặ r rảrêả Ă 1Sn |71j7n |d1j7ne r rtđq rhl308/ s034[dl S q ĂrÔrêả Ărq ĂrĐ :S q ĂrÔrơđ Ărêả Ărq ĂrĐ q Ărẳràq r Ăqr g #B[\KK go [\KK ẽqáẵrrắqrvrẳrẵtr + s034[dl g87 qrơđ Ărđ Ă g87 qrđ rqârặrắqrƠrơđ Ărqrẳrẵt g ẳrẵtrđ rqrƠrơđ Ărqrắqâ g87 qrĂqràẳ SHELL_LINUX 5-18 5 SHELL _LINUX g„87 Ãqž•r°œqrµ¯°̉ ̣ g%„87 Ãqž•r°¯rÐt-¸ r™œ¼°r™œq́ ̀ ̣ ´¯˜ r™¼rž¯¡q°́ ̉ rhl308/́ ̉ s034[dĺ ̃ : [ŽF 7%&j!7&% Ñ[a 7%&j7&% Ž• ' UVVU ²tr³œ˜³ŕ ́ q¾rµq¸tr¬q¸ ̀ ̣  7 µq¸tr¬q¸ rž˜rrº•š¯r¹™št•r£r±»̀ ̣ ̀ ™œ¼°r™œqr™«™r°˜rž¸ œr³œq˜r™š¸ r•ž›•̣ ́ ̉ ̣ ́ 787  ¸trµqq¸tr¬q¸ r¬œ® ¡rµt ¡r¹r ¯ £º•š¯»́ ̀ ̣ ́ ™œ¼°r™œqr™«™r°˜rž¸ œr™š¸ r¾q̣ ́ ̉ ̣ „ ^\208_2`0dg07t3403[l2́ ́ ̀ ²tr³œ˜³rú ́  q¾rµq¸tr¬q¸ r¤̀ ̣ 7 ™œ¼°r™œqrž¸ œr ¸trµq¸tr¬q¸ r¤rµt ¡̣ ̣ ́ ̀ ̣ ́ 787 q¾rµq¸tr¬q¸ r§̀ ̣ 7 ™œ¼°r™œqrž¸ œr¬œqrµq¸tr¬q¸ r§rµt ¡ṛ ̣ ̀ ̣ ́ 787 ™œ¼°r™œqrž¸ œrr¬œqrµq¸tr¬q¸ r§r¬œ® ¡rµt ¡̣ ̣ ̀ ̣ ́ „ „ pqrstŕ ̣ S? 7Ò\%H‹"ŽIÒ 7Ò K"%H•7’!IÒ 7gÒ‹787)"7d e^Ò 7! „d,g7(e•7 7Ò‰"ˆ#"&\%H‹"ŽIÒ 787999977„7„†„999999  „d,g7( e•7 7Ò‰"ˆ#"&K"%H•7’!IÒ 787 7ÒÓ!)"Ô8#7\%5K"%Ž‹Ò „ „ * >D@Uuu ²tr³œ˜³rú ́ SHELL_LINUX 6-18 6 SHELL _LINUX qắràqátrơqá rÔ 7 àqátrơqá rÔràt Ă ẳrqrrá rá rqắr qắràqátrơqá rĐrrr 7 àqátrơqá rĐràt ĂrạtrÊrằ ẳrqrrá rá rrqắ qắràqátrơqá rƯ 7 àqátrơqá rƯràt ĂrạtrÊrằ ẳrqrrá rá rrqắ 787 ơđ Ărràqátrơqá r rrá ràt Ăr ẳrqrrá rá rắq pqrstru 9:55 9&778787 d,g?e7 7ề,&7ề 78d,g8?e 7 7ề,7!7ề 78d,g7(?e 7 7ề,o7ề 787 7ề&&:,"-7_7"-7ề = vE vEU 34&'& 2Z1 7ềể78-7,-7ề 7 b8V&ế@A$G4&'&3!" !" #$$ SHELL_LINUX 7-18 7 SHELL _LINUX  %&'('%  vEUwD  " #$$)))*+)))  , ," #,$$)))-+)))   .%(%   %%))))+/)))  H vE 34&'& /0123  '' '' '' 44 4444   )566 ) )7+/' 0().8!3  %9.:'';''';'% %7<=>(!'% %?+'+;@'% =   (   /0(.!3  %(A( B=+(CA(B%  B=+($B  M CD 34&'& (@.' +'' 444 44 '' +'' 444 44 SHELL_LINUX 8-18 8 SHELL _LINUX '' +:'' 444 44 '' A'' 444 44 ''    • "G|-f|&!7@*"&|"•• • `I<+>#'MA&@*"#B@4 W (Ox&D TV@P!#BB@7";;YB'8f|4&'&@ [YB@>&@Õ#B4&@A>-8f|&&  )566 )=DE4 )F;;<+4 )&G/H  D 0(.;D3  (  =! L)&;)_<B' aKH'y#HUD [;@W)4!$N&/P8f|Jb20H!)!"„I  )566 )';.2</4>&';/;H   %(% ))I82</JJ''D4 =! FB'8f| uFz{zKDKUU  34ONB'8f|#B&|8"B8"B‚!@4bP8f|-;8;b#/ P&'>!8f SHELL_LINUX 9-18 9 SHELL _LINUX J@7/_!<#BB'8f|JbG0-;8;B'8f|J"G|87 @$bG?_!-|&'>!8;$"#'#$4b8V& >?X Ox&D|FAIz a8>7@$@A'P$|-;!8;P8f w8>77@#-!Y8>"|P8f| w'&!_!g_g_g% j&!-7#-!8f|4&'&H#B)&IF@|> ;&8>NVNK j&!-7!-f|b8>#)F@;& 8>N@VN@& 3'&j_gế8;->!"_ệ8>N@ j%&!-7!#$("-f|8>78G|$U[@; &8>NKVNK w!&@#-!!8847%[$"w&&'&;)8>!&&|8; 8>@D"/!& 34&'&!&ì !ỉì!8ỉ }K~z ? F'#|788 !"& |7"&H38.3I 2 " L88 )566 +JKL; ( (J9M-F! )9M-FNOP;+22Q-+4 R S =! Z[\3 #" 1. KD ^20[l0`[h0] !ĩĩ ! ẵẵ sĐrẳrrqr átrẵẵ srÔrrvárãqrtrrrạtằ ^20[l0`[h0 ! ! ẵẵ srĐrqrẳrqrơqrãqrtrtrẵẵ srÔrrrơrrạắằ ^h08[e0n/012 340`l0[ld0 !ĩĩ ! !2 ẻátrẵẵ srÔr rđ Ărqrẳrqrẵẵ sĐƠr átrơđ Ărqrẳrqrẵẵ sƯ SHELL_LINUX 10-18 10 [...].. .SHELL -_LINUX Vi du : $ rm myf && echo “xoa thanh cong” || echo “chua xoa duoc file” 2 I/O Redirection and file descriptors I/O redirector dung để gơi output cua lênh ra file và đoc input từ file ̀ ̉ ̉ ̣ ̣ Vi du : $ cat > myf this is my file nhân Ctrl+D ́  cat sẽ tao file myf chưa dong “this is my file” ̣ ́ ̀ Trong lâp trinh Linux, cac thiêt bị như ban phim, man hinh đêu đươc coi như là... ̀ ̀ ̣ ́ ̣ tên như sau : Standard File Stdin Stdout Stderr File descriptor number 0 1 2 Sử dụng Standard input Standard output Standard error Ví dụ Ban phim ̀ ́ Man hinh ̀ ̀ Man hinh ̀ ̀ Chung ta đã khá quen thuôc vơi stdin và stdout File cuôi cung trong bang trên là stderr (số 2) ́ ̣ ́ ́ ̀ ̉ đươc chương trinh dung để in lôi ra man hinh Ta có thể redirect output từ 1 file descriptor ra file... thế tât cả chuôi trung vơi substring băng replacement ́ ̃ ̀ ́ ̀ Ví dụ : stringZ=abcABC123ABCabc echo ${stringZ/abc/xyz} echo ${stringZ//abc/xyz} SHELL_ LINUX # xyzABC123ABCabc # xyzABC123ABCxyz 15-18 15 SHELL -_LINUX Bai tập ̀ Bai 1 : Viêt chương trinh shell giai phương trinh bâc hai : ax2 + bx +c =0 vơi cac tham số a,b,c nhâp từ ̀ ́ ̀ ̉ ̀ ̣ ́ ́ ̣ ban phim và cac kêt quả chinh xac đên hai chữ... _filesize[$index]=$filesize let "index +=1" fi SHELL_ LINUX # trương thứ 5 cua kêt quả lênh ls –l là kich ̀ ̉ ́ ̣ ́ # thươc file ́ # gan mang file name ́ ̉ # gan mang file size ́ ̉ 16-18 16 SHELL -_LINUX done echo "Tong so tap tin : $index" for ((i=0 ; i&destination 3 Ham ̀ Cú phap : ́ function-name ( ) { command1 commandN return } hoăc ̣ function function-name SHELL_ LINUX 11-18 11 SHELL -_LINUX { } command1 commandN return Trong đo, function-name là tên ham, lênh return sẽ kêt thuc ham ́ ̀ ̣ ́ ́ ̀     Goi ham : function-name ̣ ̀ Truyên tham số : function-name... exit 0;; *) echo "Please choice 1,2,3,4 Press Enter key to continue "; read;; esac done 5 Lệnh Shift Shift di chuyên nhưng tham số command line qua trai 1 vị tri ̉ ̃ ́ ́ Ví dụ : $ myfile -f foo bar  $1 = -f ; $2 = foo ; $3 = bar khi goi lênh shift thì giá trị cac biên sẽ như sau : ̣ ̣ ́ ́  $1 = foo ; $2 = bar ; Ta có thể di chuyên qua trai nhiêu hơn 1 vị trí băng cach thêm số vao sau . () a@Pbc_'P$= 34&'&7d&ed"f_$=e 3'& g#B#O+%"Gb g7&h&"Y#O+7!""i"f i!!87H$"BI i!#&!7 i#B%"Gb i%"Gb i*@D"b i! ii"i 7j7k-6!!i!iiGi] SHELL_ LINUX 1-18 1 SHELL _LINUX * +,- ./012 34056̉ ̣  34&'&7%&&&h&'&. ()NOP-QRS&,TUV a@8)Y8>"•&‡;&-;8";$ SHELL_ LINUX 2-18 2 SHELL _LINUX 34&'&7!!! !2=![ 7!#B!-G'P<@A!$,•EˆK‰  7! !S],•EˆK‰] M"i&h&%"Gb@•&$&Y8>"7![$"7!j<#B OQ!@  97!!. 98||Š‹!@D" [$"@V|Š‹!)b8V&#BD!#"&|Š‹ †87|Š‹S7!!-7&!†"„"88!-77  7k,!-7,„"88!-7] 7Œ575&!† |Š‹•#B@{ W +X) SHELL_ LINUX 3-18 3 SHELL _LINUX }w!&/-)78_@+&;)!D")*; !-G!" ,-)787 F@ -)788;/& 7!-G")*;& !-G! F788_")%"@$Y!-G!" -)788;,? 78;, 8;,

Ngày đăng: 14/12/2021, 17:49

TỪ KHÓA LIÊN QUAN

w