Android

Tuyên bố trường hợp Bash

tr - Transform, Replace and Remove specific characters from strings | #10 Practical Bash

tr - Transform, Replace and Remove specific characters from strings | #10 Practical Bash

Mục lục:

Anonim

Các báo cáo trường hợp Bash thường được sử dụng để đơn giản hóa các điều kiện phức tạp khi bạn có nhiều lựa chọn khác nhau. Sử dụng câu lệnh tình huống thay vì lồng nhau nếu câu lệnh sẽ giúp bạn làm cho tập lệnh bash của bạn dễ đọc hơn và dễ bảo trì hơn.

Câu lệnh Bash có một khái niệm tương tự với câu lệnh chuyển đổi Javascript hoặc C. Sự khác biệt chính là không giống như câu lệnh chuyển đổi C, câu lệnh trường hợp Bash không tiếp tục tìm kiếm một mẫu khớp khi nó đã tìm thấy một và các câu lệnh được thực thi liên quan đến mẫu đó.

Trong hướng dẫn này, chúng tôi sẽ trình bày những điều cơ bản của các câu lệnh trường hợp Bash và chỉ cho bạn cách sử dụng chúng trong các tập lệnh shell của bạn.

Báo cáo trường hợp Cú pháp

Tuyên bố trường hợp Bash có dạng sau:

case EXPRESSION in PATTERN_1) STATEMENTS;; PATTERN_2) STATEMENTS;; PATTERN_N) STATEMENTS;; *) STATEMENTS;; esac

  • Mỗi báo cáo trường hợp bắt đầu với từ khóa case theo sau là biểu thức trường hợp và từ khóa in . Câu lệnh kết thúc bằng từ khóa esac Bạn có thể sử dụng nhiều mẫu được phân tách bằng dấu | nhà điều hành. Toán tử ) chấm dứt một danh sách mẫu. Một mẫu có thể có các ký tự đặc biệt. Mẫu và các lệnh liên quan của nó được gọi là mệnh đề. Mệnh đề mỗi phải được kết thúc bằng ;; Các lệnh tương ứng với mẫu đầu tiên khớp với biểu thức được thực thi. Đây là cách thông thường để sử dụng ký hiệu dấu hoa thị ký tự đại diện ( * ) làm mẫu cuối cùng để xác định trường hợp mặc định. Mẫu này sẽ luôn khớp. Nếu không có mẫu nào khớp với trạng thái trả về bằng không. Mặt khác, trạng thái trả về là trạng thái thoát của các lệnh được thực thi.

Ví dụ báo cáo trường hợp

Dưới đây là một ví dụ sử dụng câu lệnh tình huống trong tập lệnh bash sẽ in ngôn ngữ chính thức của một quốc gia nhất định:

ngôn ngữ

#!/bin/bash echo -n "Enter the name of a country: " read COUNTRY echo -n "The official language of $COUNTRY is " case $COUNTRY in Lithuania) echo -n "Lithuanian";; Romania | Moldova) echo -n "Romanian";; Italy | "San Marino" | Switzerland | "Vatican City") echo -n "Italian";; *) echo -n "unknown";; esac

Lưu tập lệnh tùy chỉnh dưới dạng tệp và chạy nó từ dòng lệnh.

bash languages.sh

Kịch bản sẽ yêu cầu bạn vào một quốc gia. Ví dụ: nếu bạn gõ kiểu Litva Lit, nó sẽ khớp với mẫu đầu tiên và lệnh echo trong mệnh đề đó sẽ được thực thi.

Kịch bản sẽ in đầu ra sau:

Enter the name of a country: Lithuania The official language of Lithuania is Lithuanian

Enter the name of a country: Argentina The official language of Argentina is unknown

Phần kết luận

Bây giờ bạn nên có một sự hiểu biết tốt về cách viết các báo cáo trường hợp bash. Chúng thường được sử dụng để truyền tham số cho tập lệnh shell từ dòng lệnh. Ví dụ: các tập lệnh init đang sử dụng các câu lệnh tình huống để bắt đầu, dừng hoặc khởi động lại dịch vụ.

thiết bị đầu cuối bash