2014-05-22 23 views
5

Gỡ lỗi các tập lệnh bash trên dòng lệnh phức tạp.Có trình gỡ lỗi GUI cho tập lệnh shell

Có trình gỡ lỗi dựa trên GUI có sẵn để gỡ lỗi các tập lệnh bash không?

+0

Tôi không chắc chắn rằng luôn luôn muốn * GUI dựa trên * gỡ lỗi là một thói quen hữu ích. Rất nhiều thứ dễ dàng hơn * không có * GUI và việc gỡ lỗi 'bash' thường dễ dàng hơn trong thiết bị đầu cuối (không có GUI) –

Trả lời

3

Một mẹo hữu ích là để bắt đầu (thực thi) bash script của bạn với

#!/bin/bash -vx 

ít nhất trong giai đoạn sửa lỗi; bạn sẽ nhận được rất nhiều tin nhắn hữu ích từ bash. Xem bash(1)

Nếu tập lệnh của bạn không được sử dụng trong thiết bị đầu cuối (ví dụ: tập lệnh được gọi từ mục nhập crontab(5)), bạn cũng có thể sử dụng lệnh logger(1).

Cuối cùng, tôi tin rằng bash không phải là công cụ thích hợp để tạo tập lệnh phức tạp. Nếu tập lệnh của bạn trở nên phức tạp hoặc lớn hơn vài chục dòng, hãy xem xét chuyển sang ngôn ngữ kịch bản tốt hơn (như GNU guile, python, gawk, v.v ...). Nói chung, bạn không nên viết mã nhiều trong bash.Có đau để gỡ lỗi một kịch bản bash thường là một triệu chứng mà bạn nên recode kịch bản đó trong một ngôn ngữ tốt hơn.

Bạn cũng có thể thấy hữu ích để tạo tập lệnh trình bao của mình. autogen có thể hữu ích cho điều đó.

6

Tải xuống ShellEd plugin eclipse (trang web cập nhật không hoạt động đối với tôi) cho phép chỉnh sửa tập lệnh bash. Cài đặt thông qua Help -> Install new software -> Add -> Archive.

Tải xuống basheclipse và trích xuất nội dung vào eclipse plugins thư mục plugin của bạn.

Khởi động lại nhật thực. Tạo một dự án Eclipse mới BashTest.

Thêm một tập tin myscript.sh cho dự án:

#! /bin/bash 

. _DEBUG.sh 

echo 'kshitiz' 
echo 'This is a test' 
x=1 
y=3 
z=3 

Thêm để dự án của bạn (của nó trong zip tải về cho basheclipse).

Đi tới Run -> Debug configurations và tạo cấu hình mới theo Bash script danh mục. Chọn myscript.sh.

enter image description here

Sau đó bấm Debug. Mở phối cảnh Debug.

Đi tới Window -> Preferences -> Shell script -> Interpreters và đảm bảo rằng thông dịch viên là /bin/bash. Đối với tôi, mặc định là /bin/dash.

enter image description here

Đặt điểm ngắt trong tập lệnh. Đối với một số lý do trình đơn nhấp chuột phải không hiển thị tùy chọn để đặt điểm ngắt nhưng Ctrl+Shift+B sẽ hoạt động. enter image description here

Chạy tập lệnh Run -> Run as -> Run shell script. Điểm ngắt sẽ nhấn nhưng sẽ không thể tìm thấy nguồn tập lệnh của bạn (wierd eh!). Chỉ cần nhấp vào Select Bash script và chọn myscript.sh.

Bây giờ bạn có thể bước qua mã và phân tích các biến: enter image description here

Các vấn đề liên quan