Cách th ba

Một phần của tài liệu Lập trình trong môi trường shell unixlinux (Trang 55 - 57)

i v i các shell pdksh và bash, hãy th c hi n câu l nh . v i tham s là tên c a ch ng trình shell:

. remount

Câu l nh . b t shell hi n hành (pdksh ho c bash) th c hi n các câu l nh có trong

remount.

T ng t , đ i v i shell tcsh, câu l nh .đ c thay th b i câu l nh source : source remount

56

7.2 S d ng bi n

Gi ng nh các ngôn ng máy tính khác, vi c s d ng các bi n (variable) trong l p trình shell r t quan tr ng. Trong các bài tr c chúng ta đã làm quen v i m t s bi n môi tr ng nh PATH và PS1.

7.2.1 Gán m t giá tr cho bi n

i v i shell pdksh và bash, đ gán giá tr cho m t bi n, ta gõ tên c a bi n theo sau là m t d u b ng (=) và giá tr mà ta mu n gán cho bi n. Ví d :

bien=5

V i shell tcsh, đ gán giá tr cho bi n ta thêm t set nh sau:

set bien = 5

L u ý:

i v i bash và pdksh, cú pháp gán không ch p nh n các ký t tr ng (space) phía tr c và sau d u b ng, còn v i tcsh thì tr c và sau d u b ng có th có ký t tr ng ho c không.

Không gi ng các ngôn ng l p trình nh C ho c Pascal, ta không ph i khai báo các bi n trong shell. Vì bi n shell không có ki u (type) xác đnh, ta có th dùng m t bi n đ gán m t giá tr nguyên (integer) sau đó l i gán cho bi n đó m t giá tr chu i (string). Ví d , sau khi gán bi n bien b ng m t giá tr s (5) nh trong ví d trên ta có th ti p t c gán nh sau:

bien=Linux (pdksh ho c bash)

set bien = Linux (tcsh)

7.2.2 Truy nh p giá tr c a m t bi n

Sau khi đã gán giá tr cho bi n, đ truy nh p giá tr c a bi n đó trong ch ng trình shell, hãy thêm d u đôla ($) vào phía tr c tên c a bi n.

Tên c a bi n trong các ví d trên là bien, còn giá tr mà bi n đó mang là $bien (là chu i Linux). in giá tr đó ra màn hình ta có th s d ng l nh echo nh sau:

echo $bien

L u ý:

N u b qua d u đôla trong câu l nh trên (thành echo bien), shell hi u bien

là m t chu i và s in chu i đó ra màn hình (ch không ph i chu i Linux).

7.2.3 Tham s v trí và bi n xây d ng s n trong shell

Ta có th truy n các tham s cho ch ng trình shell qua dòng l nh. Ví d , dòng l nh sau:

remount thamso1 thamso2

c ng th c hi n ch ng trình shell remount nh ng có thêm hai tham s dòng l nh (còn g i là tu ch n dòng l nh) là thamso1 và thamso2.

57

Khi ta ch y m t ch ng trình shell có h tr các tu ch n dòng l nh nh trên thì m i tu ch n đ c l u vào trong m t tham s v trí (positional parameter). Tham s đ u tiên đ c l u vào m t bi n có tên là 1, tham s th hai đ c l u vào bi n có tên là 2... Các shell hi n th i có th h tr đ n 9 bi n nh v y. truy nh p vào các bi n này ta c ng thêm ký t đôla vào tr c tên bi n (ví d $1, $2,..). (adsbygoogle = window.adsbygoogle || []).push({});

Ch ng trình shell sau nh n vào hai tu ch n dòng l nh và in ra màn hình tu ch n th hai tr c r i m i in tham s th nh t sau:

# Chuong trinh in dao nguoc echo "$2" "$1"

N u ta th c hi n ch ng trình này (đã đ t tên là daonguoc) trên dòng l nh nh sau:

daonguoc CHAO BAN

thì trên màn hình s xu t hi n :

BAN CHAO

Các bi n đ c bi t $1, $2,... còn g i là các bi n shell xây d ng s n (built-in shell variable). Còn m t s bi n shell xây d ng s n khác r t quan tr ng trong l p trình shell. B ng sau đây li t kê các bi n này.

Một phần của tài liệu Lập trình trong môi trường shell unixlinux (Trang 55 - 57)