欧美阿v视频在线大全_亚洲欧美中文日韩V在线观看_www性欧美日韩欧美91_亚洲欧美日韩久久精品

主頁 > 知識庫 > PowerShell實現時間管理小秘書

PowerShell實現時間管理小秘書

熱門標簽:使用電話機器人電銷是否違法 電話智能外呼系統誠信合作 雷霆電話機器人電話 什么渠道可以找外呼系統客戶 金融電銷公司怎么辦理外呼系統 安徽400電話辦理 信陽話務外呼系統怎么收費 湖州電銷防封卡 真人和電話機器人對話

引言

是不是覺得同樣是活著,別人為啥就能做這么多事呢?

是不是經常8小時班上下來,卻不曉得自己干了些啥?

是不是習慣于在Email, BBS, Google Reader間切換,感覺也挺忙的呢?

你需要時間管理!

你知道自己一天寫了多少代碼嗎?

你了解自己一周有多少時間在網上游蕩嗎?

你能說出一個月有幾天陪著家人嗎?

你需要PowerShell!

管理?先記錄!

時間管理就是用最少的時間做最多的事。和優化程序的性能一樣,為了提升時間的利用率,得先知道自己的時間都花在什么地方。如果上班時間有50%都浪費在瑣事上,剩下的一半時間再集中精力,一天的成效也好不到哪去。相應的,如果90%的時間都在干活,相比于竭力縮小剩下的走神時間,反不如稍稍提高一點效率。射箭強調有的放矢,治病講求對癥下藥。知曉瓶頸所在是優化的前提。

那么如何知道自己的弱點在什么地方?記錄,養成記錄的習慣。

試想當一周結束,你看到一張統計表:這周加班5小時,所有工作時間中,27%寫代碼,22%開會,16%寫文檔,35%偷菜。寫了3600行代碼,出現了75個bug,自查出69個。是不是覺得時間管理一下子簡單了很多?多寫代碼少偷菜,少生孩子多養豬唄。當然這個“偷菜”可以是很多東西,辦公室政治,信息上癮,搭公交上下班...如果沒有這個表,恐怕很多時候自己都意識不到有這樣多的時間浪費在了瑣事上,還在苦惱怎么提高效率呢。

記錄不僅可以為管理服務,這個行動本身就能給人帶來動力。“吾日三省吾身,則知明而行無過矣?!庇涗洸粌H僅是動動筆,當回顧過去所為的時候,它更是一個“省”的過程。為什么前兩周每周都是3000+行代碼這周只有1500-?為什么昨天老婆發了3次火而此前3周一共才生兩次氣?為什么...?聲色犬馬,光影浮華,我們太容易忽略一些就發生在我們身邊的變化,而隨手的記錄,說不定就會讓我們即時警醒。

可是...難道要我每次上網都要記下來上了幾分鐘,每次老婆發火都要立馬翻個小本子出來記個陳年爛芝麻帳嗎?

記錄太煩人,秘書來幫忙

當然不,你需要的只是一個秘書。這個人心隔肚皮的世界小蜜可要不起,不過電腦,手機這些冷冰冰的塑料家伙倒真可以成為你的伙伴。我沒有能力搜羅出一系列神通廣大的軟件來一下告訴你上個月偷了幾棵菜上了多少網,但也許可以啟發你打造自己的電腦秘書。

讓電腦這個不怕麻煩的家伙說出你用電腦干了什么事可是他的拿手好戲。我們就從這里開始吧!可是...用什么工具呢?PowerShell呀!就像我們上次介紹的,這個全新的命令行工具可以輕松地獲取系統信息,接合.NET對象,管理后臺任務,還能調用Excel等高級數據分析工具。數據記錄、處理、呈現、挖掘一條龍服務,舍我其誰呢?

觀察

整個時間記錄的思路比較簡單。電腦反正不怕麻煩,可以每過半分鐘就來看看你在干啥。等一天結束的時候再把報表拿給你看就好。

可是問題來了,電腦怎么知道你是在上網,在寫文檔還是在寫代碼呢?哈,對于PowerShell來說,這個可簡單了。還記得PowerShell中傳遞的是一個個對象嗎?其中每個命令返回的都是含有豐富信息的對象,我們可以大加利用。至于怎么知道每個對象有哪些屬性,可以用get-member這個函數來查看。比如Get-process可以得到當前所有進程,我們可以用get-process | get-member來查看“進程”有哪些屬性屬性。當然由于ps是get-process的alias,我們也可以用ps | get-member來查看。

復制代碼 代碼如下:

Name                       MemberType     Definition
----                       ----------     ----------

... ...

MainModule                 Property       System.Diagnostics.ProcessModule M...

MainWindowHandle           Property       System.IntPtr MainWindowHandle {get;}

MainWindowTitle            Property       System.String MainWindowTitle {get;}

MaxWorkingSet              Property       System.IntPtr MaxWorkingSet {get;s...

MinWorkingSet              Property       System.IntPtr MinWorkingSet {get;s...

... ...

好多...一共有90個呢。注意到其中的MainWindowTitle了嗎?這個就是該進程主窗口的標題。讓我們用ps | ? {$_.MainWindowTitle} | select MainWindowTitle來看看當前系統主窗口的標題是什么:

復制代碼 代碼如下:

MainWindowTitle

---------------

Start Page - Microsoft Visual Studio

Computing Life - 博客園 - Windows Internet Explorer

你的C:\&;能干啥?(1) -- 用PowerShell打造時間管理小秘書 - Microsoft Office One...

Untitled - Message (HTML)

Windows PowerShell

Windows Task Manager

Document1 - Microsoft Word


恩恩,能看出來不少東西呢。比如說在用IE瀏覽博客園,在用Word寫文檔,在用Visual Studio寫代碼等等。還真得感謝這些軟件的設計者,把軟件的名字都放在窗口的標題上了,否則我們的統計還挺有難度。下面的事情就簡單了,我們可以用正則表達式匹配每個標題,比如含有Internet Explorer的就是在上網,含有Visual Studio的說明在寫代碼等等。只要定時來統計一下,一天有多長時間上網,多長時間寫代碼就很容易算出來了。

記錄

至此“觀察”這一步算是解決了??墒窃趺础坝涗洝蹦兀窟@個也挺簡單,用個數組就搞定,每次查看如果發現Internet Explorer就把上網+1,發現Microsoft Word就把文檔+1就好了呀。好在PowerShell早就想到了這一切,就算不動用.NET中強大的數據結構,它也內置了Hash-Table這一數據類型,非常適合我們完成統計任務。

比如我們想監測上網,寫代碼和寫文檔的時間,只要編寫這樣的腳本就好:

復制代碼 代碼如下:

$timeInterval = 30  #每30s監測一次
$record = @{"上網" = 0; "編程" = 0; "文檔" = 0}
$count = 0
while ($true)
{
    $titles = ps | ? {$_.MainWindowTitle} | select MainWindowTitle
    $titles | % { #這部分用來匹配窗口標題并進行統計,可以自由定義
        if ($_ -match "Internet Explorer") {$record["上網"]++}
        if ($_ -match "Visual Studio") {$record["編程"]++}
        if ($_ -match "Microsoft Word") {$record["文檔"]++}
        if ($_ -match "Microsoft Office OneNote") {$record["文檔"]++}
        if ($_ -match "Microsoft PowerPoint") {$record["文檔"]++}
    }
    sleep($timeInterval) #將線程轉入睡眠,每30秒喚醒一次
    $count = ($count + 1) % 10 #為了防止數據丟失,每10次記錄寫入文件一次
    if ($count -eq 0) {$record > d:\temp\timeRecord.txt}
}

代碼非常簡單,大意就是把每個窗口的標題進行匹配并統計。執行起來也很快,在毫秒量級。由于每30秒才執行一次,所以對系統幾乎沒有影響。

如果要求不高的話,只要在開著電腦的時候后臺運行這個腳本就好了。每天下班的時候去看看記錄文檔,時間如何花費自然一目了然。但是這樣畢竟要占用PowerShell的會話窗口,同時無法實時得知當前的統計結果。因此下面將試圖演示如何讓這個腳本在后臺執行,同時使我們能及時看到當前的時間利用率。如果你對這方面內容不感興趣的話可以直接跳到下一節,這部分不會影響后面的閱讀。:-)

PowerShell提供了強大的后臺任務管理,使用起來也一樣簡單。我們可以把這個腳本存成一個腳本文件,比如Motinor.ps1,然后在PowerShell中鍵入start-job {c:\users\grapeot\Monitor.ps1}就可以在后臺運行它了。我們可以看到PowerShell返回以下文字之后就又回到了命令行,于是可以繼續處理其他事務:

復制代碼 代碼如下:

Id              Name            State      HasMoreData     Location

--              ----            -----      -----------     --------

5               Job5            Running    True            localhost

而在此過程中,我們可以通過get-content d:\temp\timeRecord.txt命令來了解時間使用情況。也可以用job管理命令如stop-job來停止任務,get-job來觀察任務,receive-job來接收輸出等。

等下等下,不對呀,我們難道不能直接顯示$record嗎?讓我們來試一下。鍵入$record,回車,咦?怎么沒有結果?

這是因為PowerShell這種腳本語言中變量也是有作用范圍(scope)的。腳本中的$record只在腳本中有效,我們在全局(global)范圍內當然就看不到它啦??墒悄_本就不能寫入全局變量了嗎?當然可以。我們可以將調用命令做一點小小的改動,變成. c:\users\grapeot\Monitor.ps1,注意前面的這個點和空格,以及這里暫時沒有用start-job而是直接執行。等運行一會以后按Ctrl+C結束腳本,鍵入$record看看,結果出來了吧~這個". "叫做dot sourcing,利用它我們可以讓腳本或函數直接讀寫全局變量。當然還有一種方法是用set-variable命令加上-scope參數來讀寫。具體使用方法可以用help set-variable -parameter scope命令查詢。

但是這兩個特性在后臺job中似乎有點失效。如果用dot sourcing啟動腳本的話這個job直接就吊死了,狀態是Running但實際上得不到運行。Microsoft說這是由于叉叉過程造成死鎖搗的鬼。如果用set-variable對全局變量賦值的話還是無法用$record觀察到結果。據推測可能是后臺運行的會話和當前會話是彼此獨立的,因此沒有辦法共享變量。看來要想在后臺任務和當前會話中傳遞數據,還只能通過Receive-Job或者臨時文件了呢。如果各位有什么高招的話還請賜教呀~

呈現與挖掘

一天結束了,我們也拿到了一個統計表,比如

復制代碼 代碼如下:

Name                           Value

----                           -----

編程                           5869

文檔                           3217

上網                           3078


我們可以利用上篇文章中介紹的腳本把它畫成一個餅圖,當然也可以把每天的記錄保存下來,畫成一周狀態走勢圖。

你可以做更多…

每個人都有自己的生活自己的電腦自己的習慣,根據自己的需求動手打造自己的工具其實也是挺有成就感的一件事。而PowerShell很適合作為打造的基礎。除了用電腦監控時間利用情況以外,你當然可以做得更多。比如更詳細的統計瀏覽器記錄,看自己經常去哪些網站;觀看Google Reader的閱讀率統計,退訂那些不必要的Feed;甚至用手機做一些簡單的工作,比如用計步器軟件統計一天運動了多少,用GPS軟件統計自己在上班路上耽擱了多久,看看自己和誰打電話的時間是不是太長了等等。有時候很簡單甚至很裸的算法都能帶來神奇的發現。

其實這篇文章的目的并不在于炫耀PowerShell怎樣能干,而是想強調“記錄”這個習慣的重要性。只是用PowerShell來實現相對簡單而已。對于追求完美或者不喜歡命令行的人,當然也可以自己寫個系統服務,效果都是一樣的。

所以說,數據就是價值。讓我們用DIY精神去發掘生活中與我們擦肩而過的價值吧!

標簽:運城 六盤水 鶴崗 德州 岳陽 濟南 湛江 山南

巨人網絡通訊聲明:本文標題《PowerShell實現時間管理小秘書》,本文關鍵詞  PowerShell,實現,時間管理,;如發現本文內容存在版權問題,煩請提供相關信息告之我們,我們將及時溝通與處理。本站內容系統采集于網絡,涉及言論、版權與本站無關。
  • 相關文章
  • 下面列出與本文章《PowerShell實現時間管理小秘書》相關的同類信息!
  • 本頁收集關于PowerShell實現時間管理小秘書的相關信息資訊供網民參考!
  • 推薦文章
    欧美阿v视频在线大全_亚洲欧美中文日韩V在线观看_www性欧美日韩欧美91_亚洲欧美日韩久久精品
  • <rt id="w000q"><acronym id="w000q"></acronym></rt>
  • <abbr id="w000q"></abbr>
    <rt id="w000q"></rt>
    欧美一区二区三区成人| 亚洲主播在线播放| 久久99日本精品| www.久久国产| 日韩一区二区三区四区| 日欧美一区二区| 性囗交免费视频观看| 555www色欧美视频| 日韩av一区二区在线影视| chinese麻豆新拍video| 7777精品伊人久久久大香线蕉最新版| 亚洲va国产天堂va久久en| 少妇精品无码一区二区三区| 欧美精品在线视频| 日韩av电影免费观看高清完整版 | 少妇的滋味中文字幕bd| 久久久久亚洲综合| 国产成人丝袜美腿| 美女福利视频在线观看| 亚洲欧美一区二区三区国产精品 | 99久久伊人精品| 欧亚洲嫩模精品一区三区| 一区二区三区欧美亚洲| 一边摸一边做爽的视频17国产| 欧美精品久久久久久久多人混战| 日韩中文字幕一区二区三区| 成年人网站免费看| 欧美经典一区二区三区| 成人国产精品免费| 欧美日韩一区二区不卡| 日韩黄色一级片| 久久久久久成人网| 亚洲欧美在线高清| 亚洲自拍偷拍精品| 久久久亚洲高清| 成人av动漫在线| 欧美日韩国产一级片| 欧美aaa在线| 91香蕉视频在线播放| 亚洲精品国产视频| 中文字幕一区二区三区人妻| 国产色一区二区| 91视视频在线直接观看在线看网页在线看| 欧美高清你懂得| 精品一区二区精品| 一本久久a久久免费精品不卡| 亚洲一区二区在线观看视频| 熟女俱乐部一区二区视频在线| 国产精品水嫩水嫩| 中文字幕一区二区三区人妻在线视频 | 日韩视频在线永久播放| 国产精品影视在线观看| 欧美亚洲国产一区二区三区va | 欧美一区二区三区成人精品| 欧美国产亚洲另类动漫| 国产精品日日摸夜夜爽| 久久女同性恋中文字幕| 北岛玲一区二区三区四区| 欧美一区二区三区思思人| 国产美女在线精品| 欧美日韩免费不卡视频一区二区三区| 看片网站欧美日韩| 日本乱码高清不卡字幕| 免费在线观看视频一区| 欧美性猛交xxxxx少妇| 天天操天天干天天综合网| h色网站在线观看| 五月天亚洲精品| 国产小视频你懂的| 日韩专区中文字幕一区二区| 日本午夜在线观看| 日本不卡一二三区黄网| a级片在线观看免费| 久久综合综合久久综合| 在线观看91视频| 国产精品一区在线| 日韩欧美三级在线| 91小视频免费观看| 国产偷国产偷亚洲高清人白洁 | 精品无码三级在线观看视频| 欧美亚洲一区二区三区四区| 国产一区二区在线看| 欧美久久久久中文字幕| av在线不卡电影| 久久久久99精品一区| 国产一级免费片| 亚洲色欲色欲www在线观看| 日本一级免费视频| 午夜精品福利一区二区蜜股av| 色综合天天性综合| 韩国在线一区二区| 日韩精品专区在线影院观看| 熟女人妻一区二区三区免费看| 国产精品欧美一区喷水| 超薄肉色丝袜一二三| 日韩精品国产精品| 欧美日韩一区三区| www.日本不卡| 国产精品免费丝袜| 999久久久国产| 精品在线免费视频| 日韩欧美国产午夜精品| 午夜剧场免费看| 一区二区三区国产精品| 波多野结衣亚洲色图| 国产大片一区二区| 国产午夜一区二区三区| 永久免费av无码网站性色av| 秋霞午夜av一区二区三区| 欧美久久久久久蜜桃| 国产精品99久久久精品无码| 亚洲人成小说网站色在线| 国产精品国产精品88| 国产精品亚洲专一区二区三区| 久久久久久久久久久99999| 三上悠亚ssⅰn939无码播放| 天天爽夜夜爽夜夜爽精品视频| 欧美日韩国产三级| 国产白袜脚足j棉袜在线观看| 亚洲综合另类小说| 欧美亚洲一区二区在线观看| 日本r级电影在线观看 | 8x8x8国产精品| 成人做爰www看视频软件 | 91福利在线免费观看| 99久久免费视频.com| 亚洲欧美日韩国产另类专区| 色综合欧美在线| 成人av在线一区二区三区| 综合久久久久综合| 色久综合一二码| 91片在线免费观看| 一区二区欧美国产| 欧美日本不卡视频| 韩国无码一区二区三区精品| 麻豆视频观看网址久久| 久久综合九色综合97婷婷女人| av永久免费观看| 国产一区二区精品久久| 中文字幕av一区 二区| 国产极品国产极品| 97精品国产97久久久久久久久久久久| 一区二区三区在线观看视频| 欧美日韩免费高清一区色橹橹| 久久久久亚洲无码| 蜜臀av国产精品久久久久| 久久一区二区三区国产精品| av在线播放中文字幕| 成人动漫av在线| 一区二区三区美女视频| 91精品在线免费观看| www.自拍偷拍| 国产精品一二三四五| 综合激情网...| 欧美人动与zoxxxx乱| 六月婷婷七月丁香| 国产91在线观看丝袜| 一区二区三区在线视频免费| 91精品国产综合久久久久久久久久 | 亚洲网友自拍偷拍| 日韩欧美亚洲国产另类| 国产精品久久久久久成人| 99久久久国产精品免费蜜臀| 午夜电影一区二区三区| 久久午夜羞羞影院免费观看| 极品久久久久久| 欧产日产国产精品98| 国精产品一区一区三区mba视频| 一区二区中文视频| 337p亚洲精品色噜噜噜| 五月婷婷婷婷婷| 久久无码人妻一区二区三区| 日本三级韩国三级欧美三级| 日本一区二区三区四区| 欧美三级在线看| 国产成人一区二区在线观看| 99视频一区二区| 美腿丝袜亚洲色图| 亚洲免费三区一区二区| 精品免费视频.| 色哟哟一区二区| 免费黄色在线视频| 99riav一区二区三区| 蜜臀av性久久久久蜜臀av麻豆| 中文无字幕一区二区三区| 欧美日高清视频| 九九热免费在线| 国产亚洲精品成人a| 国产精品小仙女| 五月天国产精品| 1000精品久久久久久久久| 日韩欧美一区二区视频| 91国产免费看| 性爱在线免费视频| 91丨porny丨对白| 成人sese在线| 国内外精品视频| 亚洲国产aⅴ成人精品无吗| 中文字幕欧美日韩一区| 日韩色视频在线观看|