Kỹ thuật chia để trị

Một phần của tài liệu Tìm hiểu ngôn ngữ shell script (Trang 32 - 33)

Kỹ thuật chia để trị là phương án cuối cùng nếu không thể tìm ra nơi phát sinh lỗi. Chúng ta sẽ phải sử dụng nó thường xuyên khi debug những đoạn script dài được viết bởi nhiều người.

Chúng ta sẽ bắt đầu bằng việc chia đoạn script làm hai phần, không cần phải chia chính xác thành hai phần bằng nhau. Dừng nửa script thứ nhất bằng lệnh exit. Chạy script, nếu xuất hiện lỗi thì ta sẽ biết được lỗi nằm ở nửa đầu script, còn nếu không lỗi nằm ở nửa sau của script. Tiếp đó, lặp lại bước trên cho đến khi xác định được vị trí gây lỗi.

Kỹ thuật này rất đơn giản, nhưng không phải lúc nào nó cũng hoạt động tốt. Có một số script lại không thích hợp cho việc chia ở một số đoạn lệnh. Ví dụ, ta có một script phục vụ cho việc backup dữ liệu, nếu sử dụng phương pháp này, có thể sẽ bắt đầu backup mà không hoàn thành việc backup được. Trong những trường hợp như vậy, ta có thể làm giảm tính xung đột bằng cách thay vì stop script tại điểm chia, ta có thể đặt lệnh read tại đó như trong ví dụ dưới đây:

Như trong ví dụ đòi hỏi người dùng phải ấn phím Enter. Biến ignored lưu giá trị gì không quan trọng, nhưng nó sẽ làm cho đoạn script ngừng ở đây. Chúng ta có thể mở

rộng kỹ thuật này hơn nữa bằng cách hiển thị giá trị của các biến đã được cấp phát bằng lệnh echo. Bằng cách này, chúng ta có thể dò ra giá trị của biến trong script giống như quá trình debug của các IDE cho ngôn ngữ bậc cao khác như C, C++, C#, Java...

Một phần của tài liệu Tìm hiểu ngôn ngữ shell script (Trang 32 - 33)