欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

python版本的仿windows計(jì)劃任務(wù)工具

 更新時(shí)間:2018年04月30日 15:50:24   作者:寶寶巴士  
這篇文章主要介紹了python版本的仿windows計(jì)劃任務(wù)工具,計(jì)劃任務(wù)工具根據(jù)自己設(shè)定的具體時(shí)間,頻率,命令等屬性來規(guī)定所要執(zhí)行的計(jì)劃,當(dāng)然功能不是很全大家可以補(bǔ)充

計(jì)劃任務(wù)工具-windows

計(jì)劃任務(wù)工具根據(jù)自己設(shè)定的具體時(shí)間,頻率,命令等屬性來規(guī)定所要執(zhí)行的計(jì)劃。

效果圖

代碼

# -*- coding: utf-8 -*-

"""
Module implementing App.
"""

from PyQt4.QtGui import QMainWindow
from PyQt4.QtCore import pyqtSignature
import time,os
import QtUtil
import shutil
import time

from v.Ui_App import Ui_MainWindow

class App(QMainWindow, Ui_MainWindow):
  """
  Class documentation goes here.
  """
  def __init__(self, parent = None):
    """
    Constructor
    """
    QMainWindow.__init__(self, parent)
    self.setupUi(self)
    
    # 創(chuàng)建'res/command'文件夾
    if os.path.exists('res/command'):
      pass
    else:
      os.mkdir('res/command')
    
#     self.startDate.textFromDateTime()
  
  
  @pyqtSignature("")
  def on_run_btn_clicked(self):
    """
            創(chuàng)建任務(wù).
    """   
    
    # 在查詢欄顯示的內(nèi)容
    cmd = self.taskRun.toPlainText()
    # 構(gòu)建'res/command/01.txt'文件
    if not os.path.exists('res/command/01.txt'):
      m = open('res/command/01.txt','w')
      m.close()
    p = str(self.modifier.text())
    # 判斷日期是否正確
    if self.endDate.text() <= self.startDate.text():
      QtUtil.showOkDialog(self, u'日期出錯(cuò)', u'結(jié)束日期要大于開始日期')
    
    elif not p.isdigit():
      QtUtil.showOkDialog(self, u'頻率出錯(cuò)', u'運(yùn)行頻率必須為整數(shù)')
      
    else:
      # 如果任務(wù)條件不完整,則創(chuàng)建失敗
      if self.taskName.text()=='' or self.modifier.text()=='' or cmd=='':
        QtUtil.showOkDialog(self, u'創(chuàng)建失敗', u'任務(wù)內(nèi)容缺失')
      else:
        # 讀取'res/command'下所有文件的文件名到filename
        for root, dirs, files in os.walk('res/command'):
          for file in files:
            filename = open('res/filename.txt','a')
            filename.write('/')
  #           filename.truncate()
            filename.write(str(file))
            filename.close()
            filename1 = open('res/filename.txt')
            fn = filename1.read()
            filename1.close()
        print fn
        print '/' + str(self.taskName.text()) + '.cmd'
        # 如果任務(wù)名在filename中能找到,則說明任務(wù)已經(jīng)存在
        if '/' + str(self.taskName.text()) + '.cmd' in fn:
          QtUtil.showOkDialog(self, u'創(chuàng)建失敗', u'任務(wù)已存在')
           
        else:
          
          # 任務(wù)內(nèi)容
          if self.schedule.currentText() == 'monthly':
            print 'monthly'
            run = 'schtasks /create /tn '+ self.taskName.text() + ' /tr '+os.getcwd()+'/res/command/'+self.taskName.text()+'.bat /sc ' + self.schedule.currentText() + ' /d ' +self.modifier.text() + ' /m ' + self.month.currentText() + ' /st ' + self.timeEdit.text() + ' /sd ' + self.startDate.text() + ' /ed ' + self.endDate.text()
          elif self.schedule.currentText() == 'once':
            print 'once'
            run = 'schtasks /create /tn '+ self.taskName.text() + ' /tr '+os.getcwd()+'/res/command/'+self.taskName.text()+'.bat /sc ' + self.schedule.currentText() + ' /st ' + self.timeEdit.text() + ' /sd ' + self.startDate.text() 
            if self.startDate.text() < time.strftime('%Y/%m/%d') or (self.timeEdit.text() <= time.strftime('%H:%M:%S') and self.startDate.text() == time.strftime('%Y/%m/%d')) :
              QtUtil.showOkDialog(self, u'時(shí)間錯(cuò)誤', u'設(shè)置時(shí)間早于當(dāng)前時(shí)間')
              return
          else: 
            print 'not monthly'
            run = 'schtasks /create /tn '+ self.taskName.text() + ' /tr '+os.getcwd()+'/res/command/'+self.taskName.text()+'.bat /sc ' + self.schedule.currentText() + ' /mo ' +self.modifier.text() + ' /st ' + self.timeEdit.text() + ' /sd ' + self.startDate.text() + ' /ed ' + self.endDate.text()
          
          # 創(chuàng)建命令文件
          fd = open('res/command/'+self.taskName.text()+'.bat','w')
          fd.write(cmd)
          fd.close()
          
          # 創(chuàng)建任務(wù)文件
          f = open('res/command/'+self.taskName.text()+'.cmd','w')
          f.write(run)
          f.close()
          # 創(chuàng)建任務(wù)
          os.system(os.getcwd()+'\\res\command\\'+str(self.taskName.text())+'.cmd')
          QtUtil.showOkDialog(self, u'創(chuàng)建成功', u'創(chuàng)建成功')
  @pyqtSignature("")
  def on_delete_btn_clicked(self):
    """
            刪除任務(wù).
    """
    # 強(qiáng)制刪除刪除框內(nèi)任務(wù)
    x=os.system('schtasks /delete /tn '+str(self.taskDelete.text()).decode('gbk')+' /f')
    # 如果已經(jīng)任務(wù)已經(jīng)刪除,則報(bào)任務(wù)不存在
    if x==1:
      QtUtil.showOkDialog(self, u'刪除失敗', u'任務(wù)名錯(cuò)誤或不存在該任務(wù)')
    else:
      os.remove('res/filename.txt')
      
      
      if os.path.exists('res/command/'+self.taskDelete.text()+'.cmd'):
        os.remove('res/command/'+str(self.taskDelete.text())+'.bat')
        os.remove('res/command/'+str(self.taskDelete.text())+'.cmd')
        
      # 讀取'res/command'下所有文件的文件名到filename
      for root, dirs, files in os.walk('res/command'):
        for file in files:
          filename = open('res/filename.txt','a')
          filename.write('/')
#           filename.truncate()
          filename.write(str(file))
          filename.close()
          filename1 = open('res/filename.txt')
          fn = filename1.read()
          filename1.close()
      # 刪除任務(wù),并刪除命令文件與任務(wù)文件
      QtUtil.showOkDialog(self, u'刪除成功', u'刪除成功') 
      
  @pyqtSignature("")
  def on_query_btn_clicked(self):
    """
            查詢?nèi)蝿?wù).
    """
    # 調(diào)整 936 為 437 美國(guó)編碼,才可運(yùn)行
    os.system('chcp 437')
    # 查詢?nèi)蝿?wù)
    os.system('schtasks /query')
    # 在生成新log文件前先刪除以前的log文件
    if os.path.exists('res/log.txt'):
      os.remove('res/log.txt')
    
    # 遍歷'res/command'的所有文件,將所有文件內(nèi)容復(fù)制到log文件中
    for root, dirs, files in os.walk('res/command'):
      for file in files:
        dir = str(root)+'/'+str(file)
        f = open(dir,'r')
        scripts = f.read()
        new_path_filename = 'res/log.txt'
        
        f = open(new_path_filename, 'a')
        f.write(scripts) 
        f.write('\n')
        f.close()
    # 讀取log文件
    if os.path.exists('res/log.txt'):
      fd=open('res/log.txt')
      info = fd.read()
      fd.close()
      # 在查詢窗口顯示log文件內(nèi)容
      self.taskQuery.setText(str(info))
    else:
      QtUtil.showOkDialog(self, u'失敗', u'不存在任務(wù)')
  
  @pyqtSignature("")
  def on_delall_btn_clicked(self):
    """
            清空任務(wù).
    """
    os.system('schtasks /delete /tn * /f')
    if os.path.exists('res/log.txt'):
      os.remove('res/log.txt')
    if os.path.exists('res/filename.txt'):  
      os.remove('res/filename.txt')
    shutil.rmtree('res/command')
    os.mkdir('res/command')
    QtUtil.showOkDialog(self, u'成功', u'任務(wù)清空')

“任務(wù)名稱”填寫任務(wù)的名字,計(jì)劃類型選擇時(shí)間,頻率填寫次數(shù),在計(jì)劃類型中除了monthly之外的其他類型都填寫頻率,monthly時(shí)日期填寫日期號(hào)數(shù),月份也只在選擇monthly時(shí)候需要選擇,其他時(shí)候不用選擇,月份中*號(hào)問任意月,接著填寫開始時(shí)間、開始日期、結(jié)束日期,結(jié)束日期要大于開始日期,最后填寫所要執(zhí)行的命令,則任務(wù)創(chuàng)建成功。,創(chuàng)建任務(wù)后隨時(shí)可以查閱任務(wù),點(diǎn)擊查詢?nèi)蝿?wù)即可,刪除任務(wù)只要填上要?jiǎng)h除的任務(wù)名稱,點(diǎn)擊刪除任務(wù)即可,清空任務(wù)為刪除所有任務(wù)。

本站文章為 寶寶巴士 SD.Team 原創(chuàng),轉(zhuǎn)載務(wù)必在明顯處注明:(作者官方網(wǎng)站: 寶寶巴士 )

相關(guān)文章

  • Django框架視圖函數(shù)設(shè)計(jì)示例

    Django框架視圖函數(shù)設(shè)計(jì)示例

    這篇文章主要介紹了Django框架視圖函數(shù)設(shè)計(jì),結(jié)合實(shí)例形式分析了Django框架視圖函數(shù)處理流程、原理與相關(guān)操作注意事項(xiàng),需要的朋友可以參考下
    2019-07-07
  • python循環(huán)控制之break和continue流程控制語(yǔ)句

    python循環(huán)控制之break和continue流程控制語(yǔ)句

    這篇文章主要介紹了python循環(huán)控制之break流程控制語(yǔ)句,Python中提供了兩個(gè)關(guān)鍵字用來控制循環(huán)語(yǔ)句,分別是break和continue,本文都有介紹,需要的朋友可以參考一下
    2022-03-03
  • Python+SymPy實(shí)現(xiàn)秒解微積分詳解

    Python+SymPy實(shí)現(xiàn)秒解微積分詳解

    SymPy是一個(gè)Python庫(kù),專注于符號(hào)數(shù)學(xué),它的目標(biāo)是成為一個(gè)全功能的計(jì)算機(jī)代數(shù)系統(tǒng),同時(shí)保持代碼簡(jiǎn)潔、易于理解和擴(kuò)展。本文將利用SymPy實(shí)現(xiàn)四行代碼秒解微積分,感興趣的可以學(xué)習(xí)一下
    2022-05-05
  • Python中的異常處理try/except/finally/raise用法分析

    Python中的異常處理try/except/finally/raise用法分析

    這篇文章主要介紹了Python中的異常處理try/except/finally/raise用法,結(jié)合實(shí)例形式分析了Python異常處理try/except/finally/raise相關(guān)功能與使用操作技巧,并附帶了Python常見異常的表格說明,需要的朋友可以參考下
    2019-02-02
  • TensorFlow索引與切片的實(shí)現(xiàn)方法

    TensorFlow索引與切片的實(shí)現(xiàn)方法

    這篇文章主要介紹了TensorFlow索引與切片的實(shí)現(xiàn)方法,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-11-11
  • python?rpyc客戶端調(diào)用服務(wù)端方法的注意說明

    python?rpyc客戶端調(diào)用服務(wù)端方法的注意說明

    這篇文章主要介紹了python?rpyc客戶端調(diào)用服務(wù)端方法的注意說明,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2022-06-06
  • pyspark?dataframe列的合并與拆分實(shí)例

    pyspark?dataframe列的合并與拆分實(shí)例

    這篇文章主要介紹了pyspark?dataframe列的合并與拆分實(shí)例,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2023-03-03
  • PyQt5如何將.ui文件轉(zhuǎn)換為.py文件的實(shí)例代碼

    PyQt5如何將.ui文件轉(zhuǎn)換為.py文件的實(shí)例代碼

    這篇文章主要介紹了PyQt5之如何將.ui文件轉(zhuǎn)換為.py文件,本文通過實(shí)例代碼給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2020-05-05
  • Pandas分組與排序的實(shí)現(xiàn)

    Pandas分組與排序的實(shí)現(xiàn)

    這篇文章主要介紹了Pandas分組與排序的實(shí)現(xiàn),文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-07-07
  • Linux環(huán)境下安裝python3

    Linux環(huán)境下安裝python3

    這篇文章介紹了Linux環(huán)境下安裝python3的方法,對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2022-07-07

最新評(píng)論