Cách thực thi đồng thời nhiều lệnh trên Linux, hệ điều hành Linux khóa học Almaty

Cách thực thi đồng thời nhiều lệnh trên Linux, hệ điều hành Linux khóa học Almaty

bài viết

Kỹ năng Linux là một yêu cầu phổ biến đối với các ứng viên xin việc trong nhiều lĩnh vực CNTT. Năm 2023, vai trò của hệ điều hành này đã tăng lên đáng kể, vì vậy việc hiểu ít nhất những kiến ​​thức cơ bản về quản trị là rất quan trọng. Kỹ năng Linux có nghĩa là sử dụng dòng lệnh để giải quyết vấn đề. Hôm nay, chúng ta sẽ nói về cách dừng thực thi các lệnh từng cái một. Đây là một phần của khóa học về hệ điều hành Linux tại Almaty . Nó sẽ giúp bạn trở thành một chuyên gia CNTT tại Kazakhstan vào năm 2023.

Chúng tôi kết hợp các lệnh theo trình tự bằng cách sử dụng ký hiệu (&), khóa học hệ điều hành Linux của bài giảng Almaty

Trước tiên, hãy xem cách cấu hình thực thi tuần tự nhiều lệnh được nhập vào terminal trên cùng một dòng, được phân tách bởi một dấu phân cách. Trong trường hợp này, dấu và " & " được sử dụng làm dấu phân cách. Ký tự đặc biệt này có ý nghĩa đặc biệt trong ngữ cảnh của shell lệnh Linux. Khóa học bảo mật Linux của chúng tôi tại Almaty sẽ giải thích chi tiết hơn về các ký tự đặc biệt là gì và chúng làm gì. Điều này giúp bạn nhanh chóng tìm được việc làm trong lĩnh vực CNTT tại Kazakhstan.

Bây giờ chúng ta hãy xem cách sử dụng ký hiệu và để kết hợp các lệnh thành một chuỗi. Giả sử bạn muốn tạo một tệp mới và hiển thị ngay danh sách nội dung của thư mục. Tất nhiên, điều này có thể được thực hiện từng cái một:

  • đầu tiên nhập lệnh chạm vào tập tin1;
  • sau đó nhập lệnh lsđể đảm bảo tệp vừa tạo tồn tại.

Tuy nhiên, bạn có thể thực hiện các thao tác tương tự chỉ trong một dòng lệnh: touch file1 & ls . Kết quả là, sau khi nhấn Enter, bạn sẽ ngay lập tức thấy danh sách nội dung của thư mục. Trong số đó, bạn sẽ thấy một tệp có tên là file1.

Tuy nhiên, điều gì sẽ xảy ra nếu đột nhiên shell không thể thực thi lệnh đầu tiên? Ví dụ: điều gì sẽ xảy ra nếu bạn bị từ chối quyền truy cập khi cố gắng tạo một tệp? Trong ví dụ này, sự kết hợp của các lệnh sẽ vẫn cố gắng hiển thị danh sách nội dung, trong đó tài liệu mới sẽ không xuất hiện. Nghĩa là, lệnh thứ hai được thực thi bất kể lệnh đầu tiên có thành công hay không.

Điều đáng lưu ý là người dùng thường không chỉ muốn thực thi tất cả các lệnh từng cái một, mà còn muốn thực thi lệnh tiếp theo nếu lệnh trước đó hoàn thành thành công. Trong trường hợp này, chỉ cần thay thế dấu và đơn bằng dấu và kép — " && ". Khi đó, nếu bất kỳ lệnh nào trong hàng đợi thất bại, việc thực thi tiếp theo cũng sẽ bị gi gián đoạn. Khóa học Linux torrent Almaty của chúng tôi sẽ đề cập chi tiết hơn về vấn đề này. Tuy nhiên, trên thực tế, phương pháp này được sử dụng, ví dụ, khi thực thi các lệnh apt updateapt upgrade trên cùng một dòng.

Chúng tôi kết hợp các lệnh thành một đường dẫn bằng thanh dọc (|)

Cần lưu ý rằng trong một số trường hợp, việc chỉ đơn giản thực thi một chuỗi các lệnh lần lượt là chưa đủ . Đôi khi bạn cần xử lý đầu ra của một lệnh bằng một lệnh khác. May mắn thay, các hệ điều hành giống UNIX sử dụng đường ống (pipe) đặc biệt cho mục đích này. Các lệnh trong một đường ống Linux được phân tách bằng dấu gạch dọc ( | ) và được thực thi theo thứ tự chúng được liệt kê trên dòng lệnh.

Không giống như nối đơn giản bằng cách sử dụng ký hiệu và ký hiệu kép, quy trình hoạt động khác nhau:

  • lệnh đầu tiên được thực thi có tính đến các đối số và tùy chọn do người dùng nhập;
  • đầu ra kết quả của lệnh đầu tiên được chuyển sang đầu vào của lệnh thứ hai;
  • lệnh thứ hai được thực thi với các tùy chọn do người dùng chỉ định, v.v.

Một ví dụ điển hình là lọc kết quả đầu ra của lệnh bằng tiện ích grep , cũng như sắp xếp bằng tiện ích sort . Sử dụng pipeline giúp giảm thời gian thực hiện các thao tác thường xuyên và giúp trích xuất thông tin quan trọng từ các tập dữ liệu lớn, loại bỏ nhu cầu sử dụng trình soạn thảo văn bản có chức năng tìm kiếm tệp. Hơn nữa, điều này cho phép xử lý dữ liệu được tạo ra trong thời gian thực mà không cần lưu vào ổ đĩa. Tìm hiểu thêm về điều này trong các khóa học trực tuyến về Linux tại Almaty trên nền tảng Đại học SEDICOMM.

Đội ngũ SEDICOMM University : Học viện Cisco , Viện Chuyên nghiệp Linux , Viện Python.