Cách sử dụng các biến trong lập trình Bash

How Use Variables Bash Programming



Các biến hoạt động như một bộ lưu trữ tạm thời cho bất kỳ ngôn ngữ lập trình nào. Người lập trình cần có khái niệm rõ ràng về việc sử dụng các biến khác nhau trong mã. Các biến được sử dụng để lưu trữ dữ liệu cụ thể. Kiểu dữ liệu được sử dụng phổ biến nhất của các biến là số nguyên, chuỗi, float, double và Boolean. Kiểu dữ liệu của bất kỳ biến nào phải được xác định tại thời điểm khai báo biến đối với các ngôn ngữ lập trình kiểu mạnh. Nhưng BASH là một ngôn ngữ lập trình được đánh máy yếu, không yêu cầu xác định bất kỳ kiểu dữ liệu nào tại thời điểm khai báo biến. Vì vậy, khi bất kỳ giá trị số nào gán cho một biến thì nó sẽ hoạt động dưới dạng số nguyên và khi bất kỳ giá trị văn bản nào gán cho một biến thì đó là chuỗi. Các biến BASH có thể được sử dụng từ thiết bị đầu cuối hoặc trên bất kỳ tệp BASH nào. Việc sử dụng các loại biến BASH khác nhau được mô tả trong hướng dẫn này bằng cách sử dụng nhiều ví dụ.

Sử dụng biến từ dòng lệnh hoặc thiết bị đầu cuối

Bạn không phải sử dụng bất kỳ ký tự đặc biệt nào trước tên biến tại thời điểm đặt giá trị bằng BASH như các ngôn ngữ lập trình khác. Nhưng bạn phải sử dụng ký hiệu ‘$’ trước tên biến khi bạn muốn đọc dữ liệu từ biến. Bạn có thể đặt và lấy dữ liệu từ một biến từ thiết bị đầu cuối theo cách sau.







Ví dụ-1: Khai báo và đọc dữ liệu chuỗi sử dụng biến

Chạy các lệnh sau từ thiết bị đầu cuối.



$myvar='Lập trình BASH'
$quăng đi $ myvar

Đầu ra:



Lập trình Bash biến





Ví dụ-2: Kết hợp hai biến chuỗi

Bạn không phải sử dụng bất kỳ toán tử nào để kết hợp hai hoặc nhiều chuỗi giống như các ngôn ngữ khác. Đây, $ var1 được sử dụng để lưu trữ giá trị chuỗi và $ var2 được sử dụng để lưu trữ một giá trị số. Chạy các lệnh sau từ thiết bị đầu cuối để kết hợp hai biến $ var1$ var2 .

$var1='Giá vé này là $'
$var2=năm mươi
$quăng đi $ var1$ var2

Đầu ra:



** Lưu ý: Bạn có thể in giá trị của biến mà không cần bất kỳ dấu ngoặc kép nào nhưng nếu bạn sử dụng dấu ngoặc kép thì bạn phải sử dụng dấu ngoặc kép.

Ví dụ-3: Nối các chuỗi với các biến

Dấu ngoặc kép có thể được sử dụng để đọc giá trị của biến. Trong ví dụ này, dấu ngoặc kép được sử dụng trên một câu lệnh echo và dấu ngoặc kép được sử dụng trên một câu lệnh echo khác. Chạy các lệnh sau từ thiết bị đầu cuối để kiểm tra kết quả đầu ra.

$ở đâu='TIỀN'
$quăng đi '$ varLập trình '
$quăng đi 'Lập trình $ var'

Đầu ra:

Ví dụ-4: Khai báo và đọc dữ liệu số bằng biến NS

Một trong những hạn chế lớn của lập trình Bash là nó không thể thực hiện các phép toán số học như các ngôn ngữ lập trình khác. Giá trị số được lấy dưới dạng chuỗi trong BASH. Vì vậy, không có phép toán số học nào có thể được thực hiện bằng biểu thức bình thường và nó chỉ kết hợp các giá trị số. Nếu bạn viết biểu thức với dấu ngoặc kép đầu tiên thì phép toán số học sẽ hoạt động đúng. Chạy các lệnh sau từ thiết bị đầu cuối.

$n=100
$quăng đi $ n
$quăng đi $ n+hai mươi
$((n= n +hai mươi))
$quăng đi $ n

Đầu ra:

Ví dụ-5: Thực hiện phép tính số học bằng lệnh bc

bc lệnh là một cách khác để thực hiện phép toán số học trong BASH. Chạy các lệnh sau từ thiết bị đầu cuối. Khi bạn sử dụng bc lệnh chỉ để thực hiện bất kỳ phép toán số học nào sau đó các phần phân số bị bỏ qua khỏi kết quả. Bạn phải sử dụng -NS tùy chọn với bc lệnh để nhận kết quả với giá trị phân số.

$n=55
$quăng đi $ n/10 | bc
$quăng đi $ n/10 | bc -NS

Đầu ra:

Sử dụng các biến trong tệp bash

Bạn có thể xác định biến trong tệp bash theo cùng một cách được đề cập trong các ví dụ trên. Bạn phải tạo tệp với .NS hoặc .bash phần mở rộng để chạy tập lệnh bash.

Ví dụ-6: Tạo tập lệnh bash đơn giản

Sao chép mã sau trong trình soạn thảo văn bản và lưu tệp với phần mở rộng bash. Trong tập lệnh này, một chuỗi và một biến số được khai báo.

P='Học lập trình BASH'

#print giá trị chuỗi
quăng đi $ str

trên một=120

#subtract 20 khỏi biến số
(( kết quả=$ num-hai mươi))

#print giá trị số
quăng đi $ kết quả

Đầu ra:

Ví dụ-7: Sử dụng các biến cục bộ và toàn cục

Trong tập lệnh sau, một biến toàn cục n và hai biến cục bộ n và m được sử dụng.
Khi hàm cộng () được gọi thì giá trị của biến cục bộ n được lấy để tính toán nhưng biến tổng thể n không thay đổi.

#! / bin / bash
n=5
hàm sốthêm vào()
{
địa phương n=6
địa phương NS=4
(( n= n + m))
quăng đi $ n

}
thêm vào
quăng đi $ n

Đầu ra:

Ví dụ-8: Sử dụng biến mảng

Biến mảng được sử dụng để lưu trữ danh sách dữ liệu. Ví dụ sau đây cho thấy cách bạn sử dụng biến mảng trong tập lệnh bash. Các phần tử của bất kỳ mảng nào được phân tách bằng dấu cách trong BASH. Ở đây, một mảng gồm 6 phần tử được khai báo. Không có chức năng hoặc thuộc tính cài sẵn nào để đếm tổng số phần tử của mảng. # với * được sử dụng để đếm tổng số phần tử. Tất cả các phần tử được biểu thị bằng dấu *. Vòng lặp For được sử dụng ở đây để lặp lại các giá trị của mảng. Đọc giá trị mảng và giá trị mảng có khóa được hiển thị trong phần tiếp theo của tập lệnh này.

#! / bin / bash

myarr=(HTML JavaScript PHP jQuery AngularJS CodeIgniter)

# Đếm tổng số phần tử của mảng
toàn bộ=$ {# myarr [*]}
quăng đi 'Tổng số phần tử:tổng $'

# In từng giá trị phần tử của mảng
quăng đi 'Giá trị mảng:'
giờtrong $ {myarr [*]}
làm
printf ' %NS ' $ giờ
xong

# In từng giá trị phần tử của mảng bằng khóa

quăng đi 'Giá trị mảng có khóa:'
Chìa khóatrong $ {! myarr [*]}
làm
printf '% 4d:% s ' phím $ $ {myarr [$ key]}
xong

Đầu ra:

Để sử dụng các biến BASH đúng cách, bạn cần có một khái niệm rõ ràng về việc khai báo và sử dụng các biến. Hướng dẫn này sẽ giúp bạn hiểu rõ hơn về các biến BASH. Sau khi thực hiện đúng các ví dụ trên, bạn sẽ có thể sử dụng các biến hiệu quả hơn trong các tập lệnh bash của mình.