Điểm:0

Sự cố khi chạy các tập lệnh liên quan qua systemd

lá cờ my

Tôi đã cố gắng tự động chạy ba tập lệnh liên quan (bệ phóng,thiết lập ứng dụng,checkapp.py) sử dụng bộ đếm thời gian systemd và dịch vụ systemd, tập lệnh đầu tiên kiểm tra tập lệnh python (ứng dụng gui) nếu nó đã chạy, sau đó khởi động lại ứng dụng gui python, vấn đề của tôi là khi tôi cố chạy dịch vụ systemd, nó đóng ứng dụng gui

đây là kịch bản đầu tiên (bệ phóng):

#!/bin/bash
/usr/share/checkapp/set-app 
thoát 0

và đây là cái thứ hai (thiết lập ứng dụng):

#!/bin/bash
CHECK_PRO="$(ps -ef | grep '[p]ython3 /usr/share/checkapp/checkapp.py' | awk '{print $2}')"
nếu [ "${CHECK_PRO}" != "" ]; sau đó
    giết -9 $CHECK_PRO
    python3 /usr/share/checkapp/checkapp.py hiển thị &
fi
thoát 0

và đây là cái cuối cùng (checkapp.py):

#!/usr/bin/env python3


nhập hệ điều hành
tín hiệu nhập khẩu
nhập gi
gi.require_version('Gtk', '3.0')
từ gi.repository nhập Gtk dưới dạng gtk
từ gi.repository nhập AppIndicator3 làm appindicator
gi.require_version('Gtk', '3.0')

APPINDICATOR_ID = 'ứng dụng kiểm tra'
app_ico = '/usr/share/checkapp/logo.svg'

chắc chắn chính():
    chỉ báo = appindicator.Indicator.new(APPINDICATOR_ID, os.path.abspath(app_ico), appindicator.IndicatorCategory.SYSTEM_SERVICES)
    indicator.set_status(appindicator.IndicatorStatus.ACTIVE)
    indicator.set_menu(build_menu())
    gtk.main()

def build_menu():
    menu = gtk.Menu()
    software_cen = gtk.MenuItem('Trung tâm phần mềm')
    software_cen.connect('kích hoạt', software_center)
    menu.append(software_cen) 
    menu.show_all()
    thực đơn trở lại

def software_center(nguồn):
    os.system('pkexec/usr/sbin/synaptic')
nếu __name__ == "__main__":
    signal.signal(signal.SIGINT, signal.SIG_DFL)
chủ yếu()

và đây là checkapp.service tập tin :

[Đơn vị]
Mô tả = ứng dụng kiểm tra
[Dịch vụ]
ExecStart=/usr/share/checkapp/launcher

và đây là checkapp.timer tập tin:

[Đơn vị]
Mô tả=Chạy ứng dụng checkapp cứ sau 2 giờ
RefuseManualStart=no                       
RefuseManualStop=không                       

[Hẹn giờ]
OnBootSec=20
OnUnitActiveSec=120 phút
Độ chính xácSec=1ms
Đơn vị=checkapp.service

[Cài đặt]
WantedBy=timers.target

Đă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.