Windows cmd運用說明

更新於 2024/06/30閱讀時間約 13 分鐘

1. Windows cmd 指令應用

不須使用任何程式軟體能與電腦溝通,使用者利用Command line,依自己設定之條件,在電腦上輸入cmd後,執行自己完成的指令集,便可由電腦將檔案內所需的項目選出,再作後續的加工運用

 

2. 運用例說明

2.1 某個檔案input file內多筆紀錄,欲尋找每筆紀錄內,某個項目(field)其值若大於 80 的該筆紀錄選出,以便後續可以加工處理出所需的內容。

 

2.2  

input file檔名CMD_jsonFile.txt內容包含個別機器之效能數據,如CPU 使用率,硬碟各槽之使用量,使用率等,讀取每筆資料,若判斷出硬碟槽使用率大於80%之數據時,則將該筆資料選取,並開始做後續加工處理

 

2.3本例設計

set Jdate=

For /f "delims=; tokens=1,2*"  %%i

in ('findstr /r "\<Use_..:.[8-9][0-9]}\>  \<Use_..:.100}\>"  "CMD_jsonFile.txt" ')

do (

      set Jdate=%%j

      set WMI_detail=%%k

      CALL  :Judge_DATE   %%

     )         ,

         

[指令註解]

<1> "delims=; tokens=1,2*"  %%i                 

  delims=; 對象資料內,以” ; ” 作區隔,以便可取得想要的項目

   tokens=1,2* 符合條件之該筆資料,取出以”;” 區隔後的第一個項目,第二個項目,以及第二個以後的全部項目。

   %%i :  表示選取之項目以I j k l m…之順序決定該項目之變數名

            第一區隔項目 以i 變數 運用

            第二區隔項目 以j 變數 運用

            第二區隔 項目以後之全部資料 以k 變數 運用

 

本例若為tokens=1,2,3,4

則可多取得第3個  CPU 使用項目,第4個磁槽使用項目

 

<2>.  

  FOR /F ["options"] %variable IN ('string') DO command [command-parameters]

        功能 : 對一組檔案中的每個檔案執行指定的命令。

<3>. findstr

    功能 : 在檔案中搜尋字串

    in ('findstr /r "\<Use_..:.[8-9][0-9]}\>  \<Use_..:.100}\>"  "CMD_jsonFile.txt" ')

  本例出力取出之條件: 若有使用率Use > 80 , 或 100

     則取得三個變數之值 : i 機器名, j 資料日,k 詳細WMI資料                                

條件判斷之設計如下:

                "\<Use_..:.[8-9][0-9]}\>  \<Use _..:.100}\>"

                   即是取出 第一組

    Use_..:.後面之第一數字是8 or 9  and 第二數字是0 到9 

或則第二組

    Use_..:.後面數字為100

 

  <4>. Do

     選取該筆資料項目後,欲執行的各種動作可以於Do (…) 內註明,亦可CALL 另一個副程式,可以非常彈性地靈活應用,如下

do (

      set Jdate=%%j

      set WMI_detail=%%k

      CALL  :Judge_DATE   %%i 

   ….

      )       

 

2.4  入力 file CMD_jsonFile.txt 內有四筆record 內容如下:

XTW-AP;Mon, 2024-06-24 09:50;{"CPU_%": 30, "MemTot_GB": 63.43, "MemUse_GB": 48.68};[{"Part": "C:", "TOT_GB": 200.0, "Use_GB": 46.35, "Use_%": 23}, {"Part": "D:", "TOT_GB": 357.04, "Use_GB": 20.26, "Use_%": 5}]
XTW-BK;Wed, 2024-06-26 10:20;{"CPU_%": 25, "MemTot_GB": 16.0, "MemUse_GB": 3.92};[{"Part": "D:", "TOT_GB": 99.87, "Use_GB": 13.67, "Use_%": 13}, {"Part": "C:", "TOT_GB": 99.45, "Use_GB": 25.45, "Use_%": 25}]
XTW-DB1;Thu, 2024-06-27 08:00;{"CPU_%": 1, "MemTot_GB": 31.85, "MemUse_GB": 7.38};[{"Part": "C:", "TOT_GB": 150.0, "Use_GB": 25.87, "Use_%": 17}, {"Part": "D:", "TOT_GB": 200.0, "Use_GB": 166.08, "Use_%": 83}]
XTW-DB2; Thu, 2024-06-27 09:50;{"CPU_%": 44, "MemTot_GB": 63.43, "MemUse_GB": 48.87};[{"Part": "C:", "TOT_GB": 200.0, "Use_GB": 46.39, "Use_%": 23}, {"Part": "D:", "TOT_GB": 357.04, "Use_GB": 20.31, "Use_%": 5}]


2.5 實例執行後,讀取四筆資料中,只有第三筆被選出

XTW-DB1;Thu, 2024-06-27 08:00;{"CPU_%": 1, "MemTot_GB": 31.85, "MemUse_GB": 7.38};[{"Part": "C:", "TOT_GB": 150.0, "Use_GB": 25.87, "Use_%": 17}, {"Part": "D:", "TOT_GB": 200.0, "Use_GB": 166.08, "Use_%": 83}] 

選出資料如下

i ->機器名: XTW-DB1 ,

j ->資料日: Thu, 2024-06-27 08:00

k ->其遺詳細資料如下:

       {"CPU_%": 1, "MemTot_GB": 31.85, "MemUse_GB": 7.38};[{"Part": "C:", "TOT_GB": 150.0, "Use_GB": 25.87, "Use_%": 17}, {"Part": "D:", "TOT_GB": 200.0, "Use_GB": 166.08, "Use_%": 83}]

 

3. cmd 命令追加說明

3.1 FOR

   功能 : 對一組檔案中的每個檔案執行指定的命令。

 FOR %variable IN (set) DO 命令 [command-parameters]

  %variable  指定一個可以取代的參數。

  (set)      指定由一或多個檔案組成的檔案組。您可使用通配字元。

  command    指定命令來執行每一個檔案。

  command-parameters

             為所指定的命令指定變數或參數。

 

 FOR擴充命令格式:

FOR /F ["options"] %variable IN (file-set) DO command [command-parameters]

FOR /F ["options"] %variable IN ('string') DO command [command-parameters]

FOR /F ["options"] %variable IN (`command`) DO command [command-parameters]

 

3.2  findstr

    功能 : 在檔案中搜尋字串。

FINDSTR [/B] [/E] [/L] [/R] [/S] [/I] [/X] [/V] [/N] [/M] [/O] [/P] [/F:file]

        [/C:string] [/G:file] [/D:dir list] [/A:color attributes] [/OFF[LINE]]

        strings [[drive:][path]filename[ ...]]

 

  /B        如果是在行的開端,則符合類型。

  /E        如果是在行的尾端,則符合類型。

  /L        逐字使用搜尋字串。

  /R        使用搜尋字串為一般表示式。

  /S        在現存目錄及所有的子目錄中搜尋符合的檔案。

  /I        指定搜尋不區分大小寫。

  /X        列印完全符合的行數。

  /V        只列印不含相符字串的行數。

  /N        列印每一行符合的行數前的行編號。

  /M        只列印包含相符字串的檔案的檔案名稱。

  /O        列印每一個相符行之前的字元位移。

  /P        跳過沒有可列印字元的檔案。

  /OFF[LINE] 不要跳過有離線屬性設定的檔案。

  /A:attr    以兩個十六進位數字指定色彩屬性。請參閱 "color /?"。

  /F:file   從指定的檔案讀取檔案清單 (/ 代表主控台)。

  /C:string 使用特定的字串作為逐字搜尋的字串。

  /G:file   從指定的檔案取得搜尋字串 (/ 代表主控台)。

  /D:dir    搜尋以分號隔開的目錄清單。

  strings   要搜尋的文字。

  [drive:][path]filename  指定要搜尋的一個或多個檔案。

 

除非引數的字首有 /C,否則請以空格將多重搜尋字串分開。

例如,'FINDSTR "hello there" x.y' 將會在檔案 x.y 中

搜尋 "hello",或 "there"。'FINDSTR /C:"hello there" x.y'

將會在檔案x.y 中搜尋 "hello there"。

 

4擴充運用

  4.1日常使用的檔案,可依自己需要,設定條件選出,例如

       上班打卡時間遲到者之選取

       人事資料內年齡大於60者選出

       各科成績分數小於60者選出

       公司員工住所在”高雄市”者選出

        … …

4.2 input file 若是Excel 檔,可先轉成csv or txt檔之格式,一樣可使用上述功能

4.3 cmd 設計完成後,再作成bat執行檔,於Windows工作排程器(task Scheduler)設定,讓程式依照排程自動執行,並將選出之資料加工處離後,利用eMail or LINE等方法,自動送出給擔當者,以便可即時確認對應

-----by linct-----

avatar-img
58會員
141內容數
樂趣體驗紀錄,沙龍房間有歌唱,生活,科技
留言0
查看全部
avatar-img
發表第一個留言支持創作者!
linct的沙龍 的其他內容
本文章介紹了CPU架構的三大類型:ARM、x86和RISC-V。著重介紹了它們的特點和市場應用情況,並提到了Nvidia採用RISC-V架構的發展經過,以及ISA的定義和重要性。
工具功能 (1) 彈性任意查詢檔案,如對來源目錄設定,檔案修改日期 設定,檔名特定字串或副檔名設定後,自動查出明細,並可展開至各階子目錄處理     (2) 依查詢後結果,可產出 LIST ,提供查詢結果之確認,再依此對檔案作複 (3) 可對檔案作移動,複製至別處,刪除處理,使電腦可騰出硬碟空間
設計功能             將整年份計畫事項,包含每月一次或每單月一次,每雙月一次之固定日期時,需要事先準備執行的事項,先一件一件記入在文字檔內,以便能該事件來臨前幾天,以LINE訊息自動發送出該事件內容給群組全員,讓全員可以事先接到通知,事先做好準備,才不會遺忘重要計畫事件     
Google 提供了免費的雲端服務 Google Apps Script (GAS) ,我們可以撰寫一些簡易的程式APP,串接其他 Google 雲端服務 如 Google Docs ,Sheets …,就能夠幫助我們利用雲端硬碟做日常工作
(1)事前LINE主動發出通知,無論何處,所有人均可掌握值勤排班內容  (2) 換班前幾天收到通知,可事先安排交代事務給下回值勤人員,讓值勤業務能順利實施
查看近日氣候 近日若計畫舉辦戶外活動,想要在你的電腦查詢近日氣候,事先掌握三天內的氣候,或想在你的手機上查看近日氣候。
本文章介紹了CPU架構的三大類型:ARM、x86和RISC-V。著重介紹了它們的特點和市場應用情況,並提到了Nvidia採用RISC-V架構的發展經過,以及ISA的定義和重要性。
工具功能 (1) 彈性任意查詢檔案,如對來源目錄設定,檔案修改日期 設定,檔名特定字串或副檔名設定後,自動查出明細,並可展開至各階子目錄處理     (2) 依查詢後結果,可產出 LIST ,提供查詢結果之確認,再依此對檔案作複 (3) 可對檔案作移動,複製至別處,刪除處理,使電腦可騰出硬碟空間
設計功能             將整年份計畫事項,包含每月一次或每單月一次,每雙月一次之固定日期時,需要事先準備執行的事項,先一件一件記入在文字檔內,以便能該事件來臨前幾天,以LINE訊息自動發送出該事件內容給群組全員,讓全員可以事先接到通知,事先做好準備,才不會遺忘重要計畫事件     
Google 提供了免費的雲端服務 Google Apps Script (GAS) ,我們可以撰寫一些簡易的程式APP,串接其他 Google 雲端服務 如 Google Docs ,Sheets …,就能夠幫助我們利用雲端硬碟做日常工作
(1)事前LINE主動發出通知,無論何處,所有人均可掌握值勤排班內容  (2) 換班前幾天收到通知,可事先安排交代事務給下回值勤人員,讓值勤業務能順利實施
查看近日氣候 近日若計畫舉辦戶外活動,想要在你的電腦查詢近日氣候,事先掌握三天內的氣候,或想在你的手機上查看近日氣候。
你可能也想看
Google News 追蹤
Thumbnail
*合作聲明與警語: 本文係由國泰世華銀行邀稿。 證券服務係由國泰世華銀行辦理共同行銷證券經紀開戶業務,定期定額(股)服務由國泰綜合證券提供。   剛出社會的時候,很常在各種 Podcast 或 YouTube 甚至是在朋友間聊天,都會聽到各種市場動態、理財話題,像是:聯準會降息或是近期哪些科
Thumbnail
不要害怕打開心房,敞開你的雙臂去擁抱、接受我們周圍的豐盛。我們可能會成功,也有可能會失敗。 我告訴你一個秘密:其實獲得豐盛、繁榮魔法的祕密是 — 放下你的恐懼,勇敢的去生活。 元素豐盛魔法 每個池塘、溪流、山脈、湖泊、岩石、水井、星星、樹木、花朵、野草等等,都有其獨特的能量振動,就像動物和
Hello,各位支持LIFE ARCHITECT的朋友,這兩個星期都比較少更新vocus,原因是筆者正錄製有關人類圖的商業應用課.這次的人類圖商業應用課是先行體驗性質,主要針對如何透過人類圖,了解自己的能量場,從而找出自己營銷有效之道,擺脫獲客和留客的困境。
Thumbnail
運用咖啡渣製作各種小物的相關資訊,如香皂、磨砂膏、手作文青小物、香氛小物、咖啡渣擴香石、肌理畫。
Thumbnail
小峰是一位休閒運動相關科系的大學生,轉眼間已經到了即將畢業的季節。因為就讀相關科系的原因,他平時就會有另外一個身份,就是專業按摩師的角色,協助需要的朋友提供專業服務;此外,在校期間想要增加收入,也從事電商平台經營,銷售商品,此外他的夢想是當一位創業家。 按摩師,電商,創業家三個選項,小峰該如何選擇?
在當今數位化快速發展的時代,每一家企業都在尋找提升效率與降低成本的方法。電子發票的使用,不僅響應了環保趨勢,更是企業轉型升級的重要一環。想像一下,如果您的事業能夠僅透過幾次簡單的設置,就讓發票處理自動化,並將成本降至最低,這無疑是許多企業主夢寐以求的局面。
自我覺察和個人成長對於每個人的成長進步都非常重要。年度回顧和新年許願是幫助我們提高自我認識,定義目標和評估達成目標的方法。本文分享了不同的寫法建議,以及如何設定具體、可實現的新年目標,並提供視覺化方式幫助達成目標。
Thumbnail
專訪 台灣愛丁頓寰盛行銷總監劉姿瓘 數位行銷及客戶關係管理經理游馥安 台灣愛丁頓寰盛:麥卡倫時光盛宴 Yahoo Asia Big Idea Chair 亞洲區至尊大獎-優異 亞洲—最佳品牌内容獎-優異 亞洲—最佳創新體驗獎-優異 廣告主/媒體代理商/廣告代理商: 台灣愛丁頓寰
Thumbnail
這個學期的第一堂課,我重新設計心情摹寫的課程,引導孩子體會放暑假以來到中秋節以後的各種心情。不同於以往,我把各種情緒形容詞的講解挪到課程後半段,而在前半段進行--表情符號的繪製。
Thumbnail
這過程其實不只商務需要,我們日常生活,每天都會遇到談判。孩子沉迷於電玩,媽媽告訴他趕緊來吃飯,小朋友不願意,這過程的往來就是談判;男女朋友今天要出去吃飯,在討論要去哪家店吃,吃什麼,這也是一種談判;去菜市場買青菜,發現菜價上漲,心有不甘的大嬸跟攤販凹一些附贈的蔥蒜,這還是談判。
Thumbnail
*合作聲明與警語: 本文係由國泰世華銀行邀稿。 證券服務係由國泰世華銀行辦理共同行銷證券經紀開戶業務,定期定額(股)服務由國泰綜合證券提供。   剛出社會的時候,很常在各種 Podcast 或 YouTube 甚至是在朋友間聊天,都會聽到各種市場動態、理財話題,像是:聯準會降息或是近期哪些科
Thumbnail
不要害怕打開心房,敞開你的雙臂去擁抱、接受我們周圍的豐盛。我們可能會成功,也有可能會失敗。 我告訴你一個秘密:其實獲得豐盛、繁榮魔法的祕密是 — 放下你的恐懼,勇敢的去生活。 元素豐盛魔法 每個池塘、溪流、山脈、湖泊、岩石、水井、星星、樹木、花朵、野草等等,都有其獨特的能量振動,就像動物和
Hello,各位支持LIFE ARCHITECT的朋友,這兩個星期都比較少更新vocus,原因是筆者正錄製有關人類圖的商業應用課.這次的人類圖商業應用課是先行體驗性質,主要針對如何透過人類圖,了解自己的能量場,從而找出自己營銷有效之道,擺脫獲客和留客的困境。
Thumbnail
運用咖啡渣製作各種小物的相關資訊,如香皂、磨砂膏、手作文青小物、香氛小物、咖啡渣擴香石、肌理畫。
Thumbnail
小峰是一位休閒運動相關科系的大學生,轉眼間已經到了即將畢業的季節。因為就讀相關科系的原因,他平時就會有另外一個身份,就是專業按摩師的角色,協助需要的朋友提供專業服務;此外,在校期間想要增加收入,也從事電商平台經營,銷售商品,此外他的夢想是當一位創業家。 按摩師,電商,創業家三個選項,小峰該如何選擇?
在當今數位化快速發展的時代,每一家企業都在尋找提升效率與降低成本的方法。電子發票的使用,不僅響應了環保趨勢,更是企業轉型升級的重要一環。想像一下,如果您的事業能夠僅透過幾次簡單的設置,就讓發票處理自動化,並將成本降至最低,這無疑是許多企業主夢寐以求的局面。
自我覺察和個人成長對於每個人的成長進步都非常重要。年度回顧和新年許願是幫助我們提高自我認識,定義目標和評估達成目標的方法。本文分享了不同的寫法建議,以及如何設定具體、可實現的新年目標,並提供視覺化方式幫助達成目標。
Thumbnail
專訪 台灣愛丁頓寰盛行銷總監劉姿瓘 數位行銷及客戶關係管理經理游馥安 台灣愛丁頓寰盛:麥卡倫時光盛宴 Yahoo Asia Big Idea Chair 亞洲區至尊大獎-優異 亞洲—最佳品牌内容獎-優異 亞洲—最佳創新體驗獎-優異 廣告主/媒體代理商/廣告代理商: 台灣愛丁頓寰
Thumbnail
這個學期的第一堂課,我重新設計心情摹寫的課程,引導孩子體會放暑假以來到中秋節以後的各種心情。不同於以往,我把各種情緒形容詞的講解挪到課程後半段,而在前半段進行--表情符號的繪製。
Thumbnail
這過程其實不只商務需要,我們日常生活,每天都會遇到談判。孩子沉迷於電玩,媽媽告訴他趕緊來吃飯,小朋友不願意,這過程的往來就是談判;男女朋友今天要出去吃飯,在討論要去哪家店吃,吃什麼,這也是一種談判;去菜市場買青菜,發現菜價上漲,心有不甘的大嬸跟攤販凹一些附贈的蔥蒜,這還是談判。