Cơ bản Velinuxshellscript
Số trang: 15
Loại file: pdf
Dung lượng: 196.58 KB
Lượt xem: 12
Lượt tải: 0
Xem trước 2 trang đầu tiên của tài liệu này:
Thông tin tài liệu:
Khi chúng ta muốn thực hiện một lệnh nào đó trong hệ điều hành Unix chúng ta cần phải ra lệnh để Unix hiểu được chúng ta muốn gì. việc ra lệnh này được thực hiện qua shell. Như vậy chúng ta có thể hiểu một cách đơn giản shell là giao diện để giao tiếp giữa người dùng và Unix
Nội dung trích xuất từ tài liệu:
Cơ bản Velinuxshellscript C¬ b¶n vÒ ShellA. Giíi thiÖu chung1. Giíi thiÖu vÒ shell Khi chóng ta muèn thùc hiÖn mét lÖnh nµo ®ã trong hÖ ®iÒu hµnh Unix chóng ta cÇn ph¶i ralÖnh ®Ó Unix hiÓu ®−îc chóng ta muèn lµm g×. ViÖc ra lÖnh nµy ®−îc thùc hiÖn qua shell. Nh−vËy chóng ta cã thÓ hiÓu mét c¸ch ®¬n gi¶n shell lµ giao diÖn ®Ó giao tiÕp gi÷a ng−êi sö dôngvµ Unix. Shell nhËn lÖnh tõ ng−êi sö dông sau ®ã dÞch vµ chuyÓn ®Õn hÖ thèng nh÷ng ho¹t®éng cÇn thùc hiÖn ®Ó ®¸p øng yªu cÇu. HiÖn nay cã mét sè lo¹i shell trong c¸c hÖ thèng Unix, trong mét sè tr−êng hîp trong méthÖ thèng nµo ®ã cã thÓ cã mét hoÆc nhiÒu shell cïng tån t¹i. Mét sè lo¹i phæ biÕn ®ang tån t¹inh−: Bourne shell, Korn shell, C shell, ... Mçi lo¹i cã sù kh¸c nhau nh−ng tÊt c¶ ®Òu cung cÊp®Çy ®ñ c«ng cô ®Ó thiÕt lËp m«i tr−êng giao tiÕp gi÷a ng−êi sö dông vµ Unix.2. Môc ®Ých cña shell Shell cã 3 môc ®Ých chÝnh nh− sau: - T−¬ng t¸c (interactive use) - §Æt biÕn m«i tr−êng ®èi víi mçi ng−êi sö dông - LËp tr×nhT−¬ng t¸c Tr−êng hîp ®−îc coi lµ ®¬n gi¶n khi sö dông shell, shell ®îi ng−êi sö dông gâ c¸c lÖnh t¹idÊu nh¾c, sau ®ã göi tíi hÖ thèng yªu cÇu tõ lÖnh nhËn ®−îc.§Æt biÕn m«i tr−êng ®èi víi mçi ng−êi sö dông Unix shell x¸c ®Þnh c¸c biÕn ®Ó ®iÒu khiÓn m«i tr−êng cña ng−êi sö dông ®èi víi mçiphiªn sö dông. ViÖc ®Æt c¸c biÕn nµy sÏ x¸c ®Þnh víi hÖ thèng nh÷ng tham sè nh− th− môcnµo sÏ ®−îc sö dông lµm th− môc chÝnh, n¬i ®Æt mail, nh÷ng th− môc nµo ®−îc sö dông mÆc®Þnh khi b¹n gäi ®Õn c¸c lÖnh Unix, ... Mét sè biÕn hÖ thèng cã thÓ ®−îc ®Æt trong tÖp khëi®éng (start-up file) vµ ®−îc ®äc khi b¹n login (®¨ng nhËp). Trong tÖp khëi ®éng b¹n cã thÓ ®Ætc¸c lÖnh cña Unix, nh−ng chó ý lµ nh÷ng lÖnh nµy sÏ ®−îc thùc hiÖn mçi khi b¹n login.LËp tr×nh Shell cung cÊp tËp hîp c¸c lÖnh ®Æc biÖt mµ tõ ®ã cã thÓ t¹o nªn nh÷ng ch−¬ng tr×nh, khi®ã ®−îc gäi lµ shell script. Trong thùc tÕ hÇu hÕt c¸c lÖnh nµy cã thÓ sö dông trong cña sælÖnh cña Unix vµ ng−îc l¹i, c¸c lÖnh cña Unix ®Òu cã thÓ viÕt trong shell script. Shell scriptrÊt tiÖn lîi trong viÖc gép nhiÒu lÖnh ®éc lËp vµo mét vµ thùc hiÖn nhiÒu lÇn. Ngoµi nh÷ng lÖnh ®¬n gi¶n cña hÖ thèng Unix, shell cßn ®−îc bæ sung thªm c¸c cÊu trócphøc t¹p nh− ®iÒu khiÓn rÏ nh¸nh (if/case), vßng lÆp (for/while).VietHung soft group - viethung_group@email.com Mét tÖp ch−¬ng tr×nh cña shell kh«ng quan träng ®Õn tªn vµ ®u«i, kh«ng cÇn dÞch còng nh−kh«ng cã m«i tr−êng ph¸t triÓn. ViÖc so¹n th¶o mét tÖp shell cã thÓ sö dông bÊt kú mét c«ngcô so¹n th¶o nµo, chØ cÇn ghi tÖp ®ã víi d¹ng text, sau ®ã ®æi thµnh d¹ng tÖp cã thÓ ch¹y®−îc. Xem vÝ dô 1 trong phÇn sau ®Ó hiÓu thªm chi tiÕt. Shell lu«n g¾n liÒn víi hÖ ®iÒu hµnh Unix, nh−ng ®Ó hiÓu vµ häc shell kh«ng nhÊt thiÕt b¹ncÇn hiÓu s©u vÒ hÖ thèng còng nh− c¸c lÖnh cña Unix. Tuy nhiªn th«ng qua nh÷ng vÝ dôchóng t«i nªu ë ®©y c¸c b¹n cã thÓ hiÓu thªm c¸ch sö dông lÖnh vµ biÕn hÖ thèng.Chó ý: Chóng t«i chØ nh¾c ®Õn hÖ ®iÒu hµnh Unix khi giíi thiÖu còng nh− h−íng dÉn sö dông,nh−ng thùc tÕ hiÖn nay Linux lµ mét hÖ ®iÒu hµnh kÕ thõa cña Unix. Linux còng cã nh÷ngshell t−¬ng tù vµ b¹n cã thÓ sö dông nh÷ng giíi thiÖu vÒ shell ë ®©y víi c¸c hÖ thèng Linux.3. Nh÷ng lo¹i shell hiÖn thêi HiÖn nay cã kh¸ nhiÒu lo¹i shell ®−îc sö dông trong c¸c hÖ thèng Unix, nh−ng ë ®©y chóngt«i chØ ®Ò cËp ®Õn 3 lo¹i c¬ b¶n vµ phæ biÕn, ®ã lµ: - Bourne shell, ®−îc coi lµ shell chuÈn, c« ®äng vµ lµ lo¹i ®¬n gi¶n nhÊt. - Korn shell, cao cÊp h¬n Bourne shell vµ cho phÐp so¹n dßng lÖnh. - C shell, sö dông có ph¸p cña ng«n ng÷ lËp tr×nh C vµ cã thªm nhiÒu chøc n¨ng tiÖn lîi.Th«ng th−êng c¸c hÖ thèng cã Ýt nhÊt lµ mét lo¹i shell vµ th«ng th−êng Bourne shell ®−îc södông ®Ó viÕt shell script, cßn sö dông mét lo¹i kh¸c cho viÖc t−¬ng t¸c. TÖp /etc/passwd sÏ x¸c ®Þnh lo¹i shell nµo sÏ ®−îc sö dông mÆc ®Þnh trong hÖ thèng chomçi phiªn lµm viÖc cña b¹n. Trong phÇn cuèi cña dßng chøa tªn b¹n, b¹n cã thÓ t×m thÊyth«ng tin vÒ lo¹i shell nµo ®−îc sö dông. Mçi khi b¹n login, hÖ thèng sÏ ®äc tÖp nµy ®Ó lÊyth«ng tin khëi t¹o cho shell.Th«ng tin cã thÓ gåm mét trong nh÷ng d¹ng sau:/bin/sh Bourne shell/bin/jsh Bourne shell, cã thªm phÇn ®iÒu khiÓn t¸c vô (job control)/bin/ksh Korn shell/bin/csh C shell B¹n cã thÓ thay ®æi shell mÆc ®Þnh sang mét lo¹i kh¸c b»ng c¸ch sö dông lÖnh: VÝ dô chuyÓn tõ Bourne shell sang C shell: exec csh hoÆc cã thÓ ®æi shell míi b»ng lÖnh: chsh [] CÊu tróc lÖnh chsh nh− sau: chsh [-s ] [ -l ] [] chsh -l liÖt kª c¸c lo¹i shell hiÖn cã (th«ng tin chøa trong tÖp /ect/shells). Trong phÇn tiÕp theo, chóng t«i sÏ giíi thiÖu vÒ Bourne shell, lo¹i tiªu chuÈn, ®¬n gi¶n vµphæ dông nhÊt hiÖn nay trong c¸c hÖ thèng Unix.VietHung soft group - viethung_group@email.comB. Bourne shell1. In mét dßng ch÷ ra mµn h×nhVÝ dô 1: B¹n t¹o ra mét tÖp víi tªn vidu1, sau ®ã gâ vµo nh÷ng dßng sau:#!/bin/sh#vi du dau tienecho “Vi du dau tien voi shell.”B¹n cã thÓ sö dông vi, emacs, .. ®Ó so¹n th¶o tÖp trªn. Sau ®ã dïng lÖnh chmod ®Ó chuyÓn tÖpvidu1 thµnh tÖp cã thÓ ch¹y ®−îc, lÖnh ®ã nh− sau: chmod +x thidu1§Ó ch¹y thö b¹n chØ viÖc gâ: vidu1 ViÖc t¹o vµ dïng chmod ®Òu cÇn thùc hiÖn ®èi víi mçi tÖp sau khi t¹o ra vµ cÇn chuyÓn thµnhtÖp ch¹y ®−îc, chóng t«i sÏ kh«ng nh¾c l¹i vÒ sau n÷a. Nh−ng ®èi tÖp ®∙ ®−îc chuyÓn modmét lÇn th× kh«ng cÇn lµm l¹i khi thay ®æi néi dung hay ®æi tªn.Gi¶i thÝch:- Dßng ®Çu tiªn lµ dßng ®Æc biÖt, dïng ®Ó x¸c ®Þnh lo¹i shell ®−îc sö dông vµ gäi ch−¬ngtr×nh th«ng dÞch shell t−¬ng øng.- Dßng thø hai b¾t ®Çu b»ng dÊu # ®Ó chØ mét dßng chó thÝch.- LÖnh echo dïng ®Ó in ra mµn h×nh x©u ký tù hay c¸c biÕn, echo cã cÊu tróc nh− sau: echo [-n] [x©u ký tù] NÕu cã chøc n¨ng -n, con trá kh«ng bÞ ng¾t xuèng dßng sau khi in x©u ký tù. Ngoµi ra, bªn trong x©u x©u ký tù c¸c b¹n cßn cã thÓ sö dông mét sè chøc n¨ng kh¸c nh−: ...
Nội dung trích xuất từ tài liệu:
Cơ bản Velinuxshellscript C¬ b¶n vÒ ShellA. Giíi thiÖu chung1. Giíi thiÖu vÒ shell Khi chóng ta muèn thùc hiÖn mét lÖnh nµo ®ã trong hÖ ®iÒu hµnh Unix chóng ta cÇn ph¶i ralÖnh ®Ó Unix hiÓu ®−îc chóng ta muèn lµm g×. ViÖc ra lÖnh nµy ®−îc thùc hiÖn qua shell. Nh−vËy chóng ta cã thÓ hiÓu mét c¸ch ®¬n gi¶n shell lµ giao diÖn ®Ó giao tiÕp gi÷a ng−êi sö dôngvµ Unix. Shell nhËn lÖnh tõ ng−êi sö dông sau ®ã dÞch vµ chuyÓn ®Õn hÖ thèng nh÷ng ho¹t®éng cÇn thùc hiÖn ®Ó ®¸p øng yªu cÇu. HiÖn nay cã mét sè lo¹i shell trong c¸c hÖ thèng Unix, trong mét sè tr−êng hîp trong méthÖ thèng nµo ®ã cã thÓ cã mét hoÆc nhiÒu shell cïng tån t¹i. Mét sè lo¹i phæ biÕn ®ang tån t¹inh−: Bourne shell, Korn shell, C shell, ... Mçi lo¹i cã sù kh¸c nhau nh−ng tÊt c¶ ®Òu cung cÊp®Çy ®ñ c«ng cô ®Ó thiÕt lËp m«i tr−êng giao tiÕp gi÷a ng−êi sö dông vµ Unix.2. Môc ®Ých cña shell Shell cã 3 môc ®Ých chÝnh nh− sau: - T−¬ng t¸c (interactive use) - §Æt biÕn m«i tr−êng ®èi víi mçi ng−êi sö dông - LËp tr×nhT−¬ng t¸c Tr−êng hîp ®−îc coi lµ ®¬n gi¶n khi sö dông shell, shell ®îi ng−êi sö dông gâ c¸c lÖnh t¹idÊu nh¾c, sau ®ã göi tíi hÖ thèng yªu cÇu tõ lÖnh nhËn ®−îc.§Æt biÕn m«i tr−êng ®èi víi mçi ng−êi sö dông Unix shell x¸c ®Þnh c¸c biÕn ®Ó ®iÒu khiÓn m«i tr−êng cña ng−êi sö dông ®èi víi mçiphiªn sö dông. ViÖc ®Æt c¸c biÕn nµy sÏ x¸c ®Þnh víi hÖ thèng nh÷ng tham sè nh− th− môcnµo sÏ ®−îc sö dông lµm th− môc chÝnh, n¬i ®Æt mail, nh÷ng th− môc nµo ®−îc sö dông mÆc®Þnh khi b¹n gäi ®Õn c¸c lÖnh Unix, ... Mét sè biÕn hÖ thèng cã thÓ ®−îc ®Æt trong tÖp khëi®éng (start-up file) vµ ®−îc ®äc khi b¹n login (®¨ng nhËp). Trong tÖp khëi ®éng b¹n cã thÓ ®Ætc¸c lÖnh cña Unix, nh−ng chó ý lµ nh÷ng lÖnh nµy sÏ ®−îc thùc hiÖn mçi khi b¹n login.LËp tr×nh Shell cung cÊp tËp hîp c¸c lÖnh ®Æc biÖt mµ tõ ®ã cã thÓ t¹o nªn nh÷ng ch−¬ng tr×nh, khi®ã ®−îc gäi lµ shell script. Trong thùc tÕ hÇu hÕt c¸c lÖnh nµy cã thÓ sö dông trong cña sælÖnh cña Unix vµ ng−îc l¹i, c¸c lÖnh cña Unix ®Òu cã thÓ viÕt trong shell script. Shell scriptrÊt tiÖn lîi trong viÖc gép nhiÒu lÖnh ®éc lËp vµo mét vµ thùc hiÖn nhiÒu lÇn. Ngoµi nh÷ng lÖnh ®¬n gi¶n cña hÖ thèng Unix, shell cßn ®−îc bæ sung thªm c¸c cÊu trócphøc t¹p nh− ®iÒu khiÓn rÏ nh¸nh (if/case), vßng lÆp (for/while).VietHung soft group - viethung_group@email.com Mét tÖp ch−¬ng tr×nh cña shell kh«ng quan träng ®Õn tªn vµ ®u«i, kh«ng cÇn dÞch còng nh−kh«ng cã m«i tr−êng ph¸t triÓn. ViÖc so¹n th¶o mét tÖp shell cã thÓ sö dông bÊt kú mét c«ngcô so¹n th¶o nµo, chØ cÇn ghi tÖp ®ã víi d¹ng text, sau ®ã ®æi thµnh d¹ng tÖp cã thÓ ch¹y®−îc. Xem vÝ dô 1 trong phÇn sau ®Ó hiÓu thªm chi tiÕt. Shell lu«n g¾n liÒn víi hÖ ®iÒu hµnh Unix, nh−ng ®Ó hiÓu vµ häc shell kh«ng nhÊt thiÕt b¹ncÇn hiÓu s©u vÒ hÖ thèng còng nh− c¸c lÖnh cña Unix. Tuy nhiªn th«ng qua nh÷ng vÝ dôchóng t«i nªu ë ®©y c¸c b¹n cã thÓ hiÓu thªm c¸ch sö dông lÖnh vµ biÕn hÖ thèng.Chó ý: Chóng t«i chØ nh¾c ®Õn hÖ ®iÒu hµnh Unix khi giíi thiÖu còng nh− h−íng dÉn sö dông,nh−ng thùc tÕ hiÖn nay Linux lµ mét hÖ ®iÒu hµnh kÕ thõa cña Unix. Linux còng cã nh÷ngshell t−¬ng tù vµ b¹n cã thÓ sö dông nh÷ng giíi thiÖu vÒ shell ë ®©y víi c¸c hÖ thèng Linux.3. Nh÷ng lo¹i shell hiÖn thêi HiÖn nay cã kh¸ nhiÒu lo¹i shell ®−îc sö dông trong c¸c hÖ thèng Unix, nh−ng ë ®©y chóngt«i chØ ®Ò cËp ®Õn 3 lo¹i c¬ b¶n vµ phæ biÕn, ®ã lµ: - Bourne shell, ®−îc coi lµ shell chuÈn, c« ®äng vµ lµ lo¹i ®¬n gi¶n nhÊt. - Korn shell, cao cÊp h¬n Bourne shell vµ cho phÐp so¹n dßng lÖnh. - C shell, sö dông có ph¸p cña ng«n ng÷ lËp tr×nh C vµ cã thªm nhiÒu chøc n¨ng tiÖn lîi.Th«ng th−êng c¸c hÖ thèng cã Ýt nhÊt lµ mét lo¹i shell vµ th«ng th−êng Bourne shell ®−îc södông ®Ó viÕt shell script, cßn sö dông mét lo¹i kh¸c cho viÖc t−¬ng t¸c. TÖp /etc/passwd sÏ x¸c ®Þnh lo¹i shell nµo sÏ ®−îc sö dông mÆc ®Þnh trong hÖ thèng chomçi phiªn lµm viÖc cña b¹n. Trong phÇn cuèi cña dßng chøa tªn b¹n, b¹n cã thÓ t×m thÊyth«ng tin vÒ lo¹i shell nµo ®−îc sö dông. Mçi khi b¹n login, hÖ thèng sÏ ®äc tÖp nµy ®Ó lÊyth«ng tin khëi t¹o cho shell.Th«ng tin cã thÓ gåm mét trong nh÷ng d¹ng sau:/bin/sh Bourne shell/bin/jsh Bourne shell, cã thªm phÇn ®iÒu khiÓn t¸c vô (job control)/bin/ksh Korn shell/bin/csh C shell B¹n cã thÓ thay ®æi shell mÆc ®Þnh sang mét lo¹i kh¸c b»ng c¸ch sö dông lÖnh: VÝ dô chuyÓn tõ Bourne shell sang C shell: exec csh hoÆc cã thÓ ®æi shell míi b»ng lÖnh: chsh [] CÊu tróc lÖnh chsh nh− sau: chsh [-s ] [ -l ] [] chsh -l liÖt kª c¸c lo¹i shell hiÖn cã (th«ng tin chøa trong tÖp /ect/shells). Trong phÇn tiÕp theo, chóng t«i sÏ giíi thiÖu vÒ Bourne shell, lo¹i tiªu chuÈn, ®¬n gi¶n vµphæ dông nhÊt hiÖn nay trong c¸c hÖ thèng Unix.VietHung soft group - viethung_group@email.comB. Bourne shell1. In mét dßng ch÷ ra mµn h×nhVÝ dô 1: B¹n t¹o ra mét tÖp víi tªn vidu1, sau ®ã gâ vµo nh÷ng dßng sau:#!/bin/sh#vi du dau tienecho “Vi du dau tien voi shell.”B¹n cã thÓ sö dông vi, emacs, .. ®Ó so¹n th¶o tÖp trªn. Sau ®ã dïng lÖnh chmod ®Ó chuyÓn tÖpvidu1 thµnh tÖp cã thÓ ch¹y ®−îc, lÖnh ®ã nh− sau: chmod +x thidu1§Ó ch¹y thö b¹n chØ viÖc gâ: vidu1 ViÖc t¹o vµ dïng chmod ®Òu cÇn thùc hiÖn ®èi víi mçi tÖp sau khi t¹o ra vµ cÇn chuyÓn thµnhtÖp ch¹y ®−îc, chóng t«i sÏ kh«ng nh¾c l¹i vÒ sau n÷a. Nh−ng ®èi tÖp ®∙ ®−îc chuyÓn modmét lÇn th× kh«ng cÇn lµm l¹i khi thay ®æi néi dung hay ®æi tªn.Gi¶i thÝch:- Dßng ®Çu tiªn lµ dßng ®Æc biÖt, dïng ®Ó x¸c ®Þnh lo¹i shell ®−îc sö dông vµ gäi ch−¬ngtr×nh th«ng dÞch shell t−¬ng øng.- Dßng thø hai b¾t ®Çu b»ng dÊu # ®Ó chØ mét dßng chó thÝch.- LÖnh echo dïng ®Ó in ra mµn h×nh x©u ký tù hay c¸c biÕn, echo cã cÊu tróc nh− sau: echo [-n] [x©u ký tù] NÕu cã chøc n¨ng -n, con trá kh«ng bÞ ng¾t xuèng dßng sau khi in x©u ký tù. Ngoµi ra, bªn trong x©u x©u ký tù c¸c b¹n cßn cã thÓ sö dông mét sè chøc n¨ng kh¸c nh−: ...
Tìm kiếm theo từ khóa liên quan:
Công nghệ thông tin quản trị mạng hệ điều hành lập trình thiết kế Cơ bản VelinuxshellscriptGợi ý tài liệu liên quan:
-
Giáo trình Lý thuyết hệ điều hành: Phần 1 - Nguyễn Kim Tuấn
110 trang 451 0 0 -
52 trang 429 1 0
-
24 trang 353 1 0
-
Top 10 mẹo 'đơn giản nhưng hữu ích' trong nhiếp ảnh
11 trang 312 0 0 -
74 trang 294 0 0
-
96 trang 291 0 0
-
Báo cáo thực tập thực tế: Nghiên cứu và xây dựng website bằng Wordpress
24 trang 288 0 0 -
Đồ án tốt nghiệp: Xây dựng ứng dụng di động android quản lý khách hàng cắt tóc
81 trang 278 0 0 -
EBay - Internet và câu chuyện thần kỳ: Phần 1
143 trang 273 0 0 -
173 trang 273 2 0