Cách tự động hóa các phiên bản đầu cuối cho các tác vụ cụ thể


10

Tôi đang trải qua một số hướng dẫn lập trình và cho mỗi phiên, tôi phải khởi động ít nhất 3 cửa sổ đầu cuối (một cho đuôi tệp nhật ký, một cho kiểm tra đầu ra, một để chạy các lệnh shell khác nhau, v.v.)

Ngay bây giờ tôi khởi động tất cả chúng theo cách thủ công: nhấp vào biểu tượng Terminal, cd vào thư mục bên phải, nhập các lệnh và thay đổi tiêu đề cửa sổ thành một cái gì đó có ý nghĩa.

Có cách nào để viết lên một kịch bản hoặc một cái gì đó sẽ tự động hóa nó cho tôi không? Và nếu vậy thì thế nào?

(Tôi rất tuyệt khi không nhận được một tập lệnh hoàn chỉnh như một câu trả lời. Một con trỏ nơi bắt đầu đọc cũng sẽ hoạt động.)

Câu trả lời:


9

Vì bạn đang nhấp vào biểu tượng Terminal, tôi giả sử bạn đang sử dụng gnome-terminal.

Tôi có một danh sách các tùy chọn bằng cách sử dụng gnome-terminal --helptại dòng lệnh và đọc từ đó.

Dựa trên câu trả lời của maco, tôi có thể đề xuất một cái gì đó như thế này:

gnome-terminal --window --title=Log -e "tail -f /var/log/syslog" --window --title=Output --working-directory=output --window --active --title=Dev --working-directory=dev/project

Ví dụ này khởi động ba cửa sổ (mặc dù bạn có thể vượt qua --tabcác tab) và đặt các thư mục làm việc (liên quan đến nhà) và tiêu đề cho mỗi tailcửa sổ , bắt đầu lệnh trong một và làm cho cửa sổ thứ ba hoạt động.

Tất nhiên bạn có thể thích sử dụng các dòng riêng biệt để khởi chạy mỗi cửa sổ, đặc biệt nếu bạn có nhiều đối số.

Một điều hữu ích khác để làm, một khi bạn đã sắp xếp các cửa sổ theo ý thích của mình, là sử dụng

gnome-terminal --save-config=FILE

Điều này tạo ra một tệp cấu hình với thông tin trên tất cả các cửa sổ và tab thiết bị đầu cuối mở (bao gồm cả tiêu đề, thư mục làm việc, v.v.). Khởi chạy gnome-terminal với --load-configtùy chọn sau đó sẽ tạo lại bố cục của bạn.

Rất nhiều nhà phát triển làm việc với nhiều thiết bị đầu cuối muốn sử dụng Terminator vì nó bổ sung các tính năng như bố cục lưới và phím tắt.


Làm theo cách này với cờ -e sẽ khiến cửa sổ đóng lại ngay khi lệnh được thực thi? Và nếu vậy, có thể làm cho cửa sổ mở?
emf

8

Bất cứ trình giả lập thiết bị đầu cuối nào bạn đang sử dụng đều có thể chấp nhận lệnh làm đối số. Ví dụ:

gnome-terminal -e "tail -f /var/log/syslog"

Chỉ cần thêm các lệnh như vậy vào tự động khởi động của bạn trong Hệ thống -> Tùy chọn -> Phiên (Ubuntu) hoặc Cài đặt hệ thống -> Tự động khởi động (Kubfox)


4

Bạn cũng có thể tự động hóa bằng cách sử dụng một tập lệnh. Tôi khuyên bạn nên đọc Hướng dẫn về Bash Bash nâng cao hoặc Lập trình Bash HOWTO, cùng với trang man cho bất kỳ thiết bị đầu cuối nào bạn đang sử dụng.

Đây là một ví dụ đơn giản:

$ vi your-script
#!/bin/bash
gnome-terminal -e "tail -f /var/log/syslog"
gnome-terminal --working-directory=/foo/bar
gnome-terminal --whatever-else

Sau đó, chỉ cần làm cho nó thực thi:

$ chmod +x your-script

bạn không cần exectất cả những thứ đó à?
maco

Có, trừ khi gnome-terminal đã chạy, thì lệnh chỉ mở một cửa sổ mới cho quá trình chạy khác và sau đó đóng lại.
LassePoulsen
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.