Điểm:3

Không thể chạy tập lệnh shell bằng cách nhấp đúp vào Tệp (Ubuntu 21.10)

lá cờ in

Trước đây trong Nautilus, vấn đề đã được giải quyết như sau: Làm cách nào để chạy các tập lệnh thực thi trong Nautilus?

Bây giờ không có phần như vậy và org.gnome.nautilus.executable-text-activation cũng không hoạt động.

N0rbert avatar
lá cờ zw
Có lẽ đã đến lúc thử Caja hoặc Nemo.
Điểm:2
lá cờ cn

Câu trả lời này có thể làm bạn thất vọng, nhưng đây rồi. Từ nhiều năm nay, các nhà phát triển Nautilus không còn dùng tùy chọn chạy tệp thực thi ở mọi nơi bằng cách nhấp đúp vào chúng.

Một trong những lập luận là các tệp thực thi phải được quản lý. Chúng nên được điều hành bởi những người dùng biết họ làm gì. Mặt khác, chúng nên được cài đặt đúng cách trên các vị trí thông thường nếu chúng được điều hành bởi những người dùng chung của hệ thống.

Nhà phát triển sẽ kiểm tra các tệp thực thi của mình từ thiết bị đầu cuối. Người dùng sẽ không bao giờ phải đối mặt với nguy cơ bắt đầu một số quy trình - có khả năng gây hại - bằng cách nhấp đúp vào một tệp ở đâu đó trong hệ thống tệp của mình. Tôi nghĩ rằng đó là một cân nhắc quan trọng tại sao tùy chọn này không được dùng nữa và giờ đây với Tệp 40, đã bị xóa một cách hiệu quả.

Đây là cách bạn nên đi về điều này:

Thực thi để sử dụng thường xuyên

  • Đặt tập lệnh shell của bạn vào một thư mục ~/.local/share/bin hoặc ~/thùng. Bất kỳ thư mục nào trong số hai thư mục này sẽ tự động được đưa vào PATH tìm kiếm của bạn - biến cho hệ thống biết vị trí tìm kiếm các tệp thực thi khi bạn nhập tên của chúng tại dấu nhắc.
  • Thực thi shellscript của bạn bằng cách nhập tên của nó vào terminal hoặc trong hộp thoại Run (thay thế+F2).
  • Tùy chọn bao gồm tập lệnh trong tổng quan ứng dụng của bạn bằng cách tạo một .desktop trình khởi chạy cho nó trong ~/.local/share/applications.

Thực thi đặc biệt các tệp thực thi cho những người dùng biết họ làm gì

Để chạy nhanh, hãy mở một thiết bị đầu cuối trong thư mục hiện tại ("Mở thiết bị đầu cuối tại đây" trong trình quản lý tệp) và chạy nó chỉ định thư mục hiện tại, ví dụ:

./myscript

Ví dụ: phần mềm biên dịch người dùng thành thạo luôn làm điều này. Họ di chuyển vào thư mục chứa tập lệnh cấu hình và thực thi nó dưới dạng:

./configure
Điểm:0
lá cờ cn

Có một cách giải quyết cho việc này:

  1. Trong ~/.local/share/applications tạo tập lệnh sẽ chạy tham số được truyền qua dòng lệnh:
#!/usr/bin/python3
# -*- mã hóa: utf-8 -*-
nhập hệ điều hành
nhập khẩu hệ thống
    
nếu __name__ == "__main__":
    cho tập lệnh trong sys.argv[1:]:
        nếu os.access(script, os.X_OK):
            os.system(f"'{script}'")
  1. Trong cùng một thư mục, hãy tạo tệp .desktop cho tập lệnh:
[Mục nhập máy tính để bàn]
Loại=Ứng dụng
Thiết bị đầu cuối = sai
Tên=Chạy tập lệnh
Exec=/home/username/.local/share/applications/run_script.py %U
  1. Khởi động lại (trong trường hợp của tôi là cần thiết) và chỉ định "Chạy tập lệnh" làm ứng dụng mặc định cho .sh, .py, v.v.

Đăng câu trả lời

Hầu hết mọi người không hiểu rằng việc đặt nhiều câu hỏi sẽ mở ra cơ hội học hỏi và cải thiện mối quan hệ giữa các cá nhân. Ví dụ, trong các nghiên cứu của Alison, mặc dù mọi người có thể nhớ chính xác có bao nhiêu câu hỏi đã được đặt ra trong các cuộc trò chuyện của họ, nhưng họ không trực giác nhận ra mối liên hệ giữa câu hỏi và sự yêu thích. Qua bốn nghiên cứu, trong đó những người tham gia tự tham gia vào các cuộc trò chuyện hoặc đọc bản ghi lại các cuộc trò chuyện của người khác, mọi người có xu hướng không nhận ra rằng việc đặt câu hỏi sẽ ảnh hưởng—hoặc đã ảnh hưởng—mức độ thân thiện giữa những người đối thoại.