Cách chạy nhiều lệnh trong Linux cùng một lúc
Thiết bị đầu cuối Linux là một công cụ mạnh mẽ cho phép bạn thực hiện các thao tác hệ thống khác nhau bằng các lệnh. Thao tác tệp, quản lý chương trình và tự động hóa dịch vụ là một số thao tác bạn có thể thực hiện hiệu quả bằng cách sử dụng các lệnh trình bao.
Tuy nhiên, khi thực hiện nhiều thao tác, việc chạy từng lệnh một sẽ không hiệu quả. Một cách nhanh hơn để làm điều đó là xâu chuỗi nhiều lệnh trong một dòng. Điều này không chỉ tăng tốc quá trình mà còn giúp bạn tiết kiệm thời gian.
Hãy khám phá tất cả các cách để chạy nhiều lệnh cùng lúc trong Linux.
Mục Lục
Chạy nhiều lệnh Linux cùng một lúc
Linux sử dụng ba toán tử để giúp bạn thực thi nhiều lệnh trong một dòng:
- Các dấu chấm phẩy (;) nhà điều hành
- Các logic HOẶC (||) nhà điều hành
- Các logic VÀ (&&) nhà điều hành
Tất cả các toán tử này có thể chạy hai hoặc nhiều lệnh trình bao cùng một lúc. Tuy nhiên, biết nên sử dụng toán tử nào và khi nào có thể giúp bạn tạo các lệnh hiệu quả hơn. Các phần sau đây thảo luận về mục đích và cú pháp để sử dụng đúng các toán tử này:
1. Sử dụng Toán tử Dấu chấm phẩy (;)
Phân đoạn chuỗi lệnh bằng dấu chấm phẩy là cách phổ biến nhất để chạy nhiều lệnh trong thiết bị đầu cuối Linux. Một phần lý do cho điều này là cách người vận hành thực hiện: nó chạy tất cả các lệnh trong chuỗi bất kể lệnh trước đó có chạy thành công hay không.
Chẳng hạn, nếu có hai lệnh: lệnh A Và lệnh Bsử dụng toán tử dấu chấm phẩy ở giữa chúng để đảm bảo cả hai lệnh được thực thi tuần tự bất kể đầu ra của lệnh đầu tiên.
command A ; command B
Vì vậy, nếu bạn đang ở trong tình huống cần chạy hai hoặc nhiều lệnh đầu cuối không liên quan cùng một lúc sao cho trạng thái đầu ra của lệnh đầu tiên không ảnh hưởng đến việc thực thi lệnh sau, thì toán tử dấu chấm phẩy là cách tốt nhất.
Trường hợp sử dụng ví dụ: Nếu bạn muốn xem tên của người dùng hiện tại và tên máy chủ hệ thống, bạn có thể thực hiện bằng cách sử dụng:
whoami ; hostname
Hãy nhớ rằng trình bao thực thi các lệnh này theo thứ tự chính xác mà bạn đề cập đến chúng. Đây là kết quả đầu ra sẽ như thế nào:
2. Sử dụng toán tử OR (||)
Chính định nghĩa của từ “hoặc” là một tặng phẩm ở đây: khi bạn chạy hai lệnh bằng toán tử OR, bạn yêu cầu trình bao chỉ thực hiện một lệnh trong số hai lệnh.
Hãy xem xét một tình huống mà bạn đã sử dụng toán tử OR với hai lệnh: lệnh A Và lệnh B. Đây là cách lệnh liên kết sẽ trông như thế nào với toán tử OR:
command A || command B
Ở đây, lệnh B sẽ chỉ thực thi nếu lệnh A bị lỗi, tức là khi lệnh A trả về lỗi. Tương tự như vậy, nếu lệnh A chạy thành công, lệnh B sẽ không thực hiện.
Nói về trường hợp sử dụng của nó, bạn có thể sử dụng toán tử OR khi bạn cần chạy hai lệnh có liên quan cùng nhau sao cho shell chỉ thực thi lệnh tiếp theo khi lệnh trước bị lỗi.
Trường hợp sử dụng ví dụ: Giả sử bạn muốn tạo một tệp mới, giả sử Tài liệu.txt, nhưng trước khi thực hiện điều đó, bạn cần đảm bảo rằng tệp chưa tồn tại trong thư mục hiện tại. Trong tình huống như vậy, bạn có thể chạy các lệnh của mình theo trình tự sau:
find . -name Document.txt || touch Document.txt
Tại đây, lệnh find sẽ tra cứu thư mục làm việc hiện tại cho Tài liệu.txt tài liệu. Nếu tìm thấy tệp, tiến trình lệnh sẽ dừng—và lệnh thứ hai sẽ không chạy.
Mặt khác, nếu nó không tìm thấy tệp, lệnh bên phải sẽ thực thi và một tệp mới có tên Tài liệu.txt sẽ được tạo trong thư mục làm việc hiện tại của bạn.
3. Sử dụng toán tử AND (&&)
Như bạn có thể đoán, toán tử AND cho phép bạn chạy nhiều lệnh theo trình tự, nghĩa là nó chỉ thực thi lệnh tiếp theo theo trình tự khi lệnh trước đó chạy thành công.
Để hiểu điều này tốt hơn, hãy xem xét một tình huống trong đó bạn muốn chạy hai lệnh có liên quan sao cho bạn muốn lệnh thứ hai chỉ chạy nếu lệnh đầu tiên trả về kết quả đầu ra hợp lệ. Trong trường hợp này, bạn có thể liên kết các lệnh lại với nhau bằng toán tử AND, được gọi là &&để có được kết quả mong muốn của bạn.
Trường hợp sử dụng ví dụ: Một trong những trường hợp sử dụng phổ biến nhất của toán tử AND trong Linux là tạo một thư mục mới và truy cập vào đó ngay lập tức. Bằng cách đó, bạn sẽ không phải chạy hai lệnh riêng lẻ để thực hiện thao tác.
Đối với hướng dẫn này, giả sử bạn muốn tạo một thư mục mới có tên Các tài liệu và ngay lập tức thay đổi thư mục làm việc hiện tại của bạn thành thư mục đó. Đây là cách bạn có thể làm điều đó:
mkdir Documents && cd Documents
Ở đây, mkdir lệnh sẽ tạo một thư mục mới có tên Các tài liệu trong thư mục làm việc hiện tại của bạn. Nếu thành công, nó sẽ cho phép lệnh cd thực thi.
Kết hợp nhiều toán tử để đáp ứng tiêu chí thực thi của bạn
Bên cạnh việc sử dụng các toán tử riêng lẻ trong các lệnh của mình, bạn cũng có thể nhóm nhiều toán tử để đáp ứng các tiêu chí thực thi của mình. Điều này rất hữu ích khi bạn muốn thực thi các lệnh thỏa mãn nhiều điều kiện.
Chẳng hạn, hãy xem xét một tình huống mà bạn muốn thực thi hai lệnh (lệnh B Và lệnh C) chỉ khi lệnh A thất bại. Để làm điều này, bạn sẽ cần sử dụng các toán tử như trong ký hiệu bên dưới:
command A || command B && command C
Trường hợp sử dụng ví dụ: Giả sử bạn muốn xác định xem một thư mục (có tên Tài liệu) tồn tại trong thư mục làm việc hiện tại của bạn và tạo nó nếu nó không có ở đó.
Trong trường hợp này, thay vì chạy các lệnh riêng biệt để tìm thư mục và tạo một thư mục mới, bạn có thể sử dụng đồng thời các toán tử OR và AND để thực hiện toàn bộ thao tác một cách hiệu quả.
Đây là những gì nó sẽ trông giống như:
find . -name Document || echo "Directory not found" && mkdir Document
Trong lệnh này, tìm thấy yêu cầu shell tìm kiếm một thư mục có tên Tài liệu trong thư mục làm việc hiện tại. Nếu không có thư mục, thiết bị đầu cuối sẽ chuyển luồng đến tiếng vang Và mkdir các lệnh in chuỗi đã chỉ định và tạo một thư mục mới tương ứng.
Chạy nhiều lệnh cùng một lúc bằng Shell Script
Shell script là một chương trình cho phép bạn tự động thực hiện một loạt các lệnh cùng một lúc. Nó giúp loại bỏ nhu cầu nhập nhiều lệnh vào thiết bị đầu cuối Linux, đồng thời tiết kiệm thời gian và công sức.
Đơn giản chỉ cần tạo một tập lệnh với tất cả các lệnh bạn cần chạy thường xuyên và biến nó thành một tệp thực thi. Sau đó, chạy nó bất cứ khi nào bạn cần thực hiện các lệnh đó và nó sẽ làm mọi thứ cho bạn.
Bắt đầu bằng cách tạo một tệp mới và nhập các lệnh bạn muốn thực hiện cùng một lúc. Lưu tệp với tên thích hợp và thêm dấu “.sh” phần mở rộng ở cuối.
Bây giờ, hãy mở terminal và điều hướng đến thư mục mà bạn đã lưu tập lệnh. Chạy lệnh sau để làm cho tệp có thể thực thi được:
chmod +x file_name
Sau khi thực hiện xong, lần sau bạn cần thực hiện lại các lệnh đó, hãy chuyển đến thư mục chứa tệp script trong terminal và thực hiện như sau:
./file_name
Một ứng dụng mà bạn có thể sử dụng ứng dụng này là cập nhật hệ thống. Thay vì nhập thủ công và thực hiện cập nhật sudo apt Và nâng cấp sudo apt lệnh vào thiết bị đầu cuối mỗi khi bạn muốn cập nhật hệ thống của mình, bạn có thể tạo một tập lệnh tự động chạy các lệnh cho bạn.
Chỉ cần tạo một tệp tập lệnh bằng lệnh sau và làm theo các bước còn lại được trình bày ở trên:
#!/bin/bash
sudo apt update && sudo apt upgrade -y
Chạy hiệu quả các lệnh đầu cuối trong Linux
Như bạn vừa thấy, việc sử dụng các toán tử trong các lệnh của bạn có thể đơn giản hóa hầu hết các thao tác dòng lệnh.
Nếu bạn thích thực hiện các hoạt động hệ thống khác nhau trên máy tính của mình thông qua thiết bị đầu cuối, việc biết cách sử dụng các toán tử này có thể rất hữu ích và hỗ trợ bạn chạy các lệnh Linux một cách hiệu quả.
Tương tự, nếu bạn mới bắt đầu—hoặc chưa quen thuộc—với Linux, học các lệnh đầu cuối khác nhau là một bước khác để thành thạo giao diện dòng lệnh.