Azure Pipelines 有個 Logging commands 可以用來與 Agent 進行溝通,你可以在執行 Pipelines 的過程中,對 Agent 做出許多設定,可以做的事情還蠻多的,而且我之前也寫過好幾篇文章,今天我想專注在「環境變數」這件事情上,尤其是 PATH
環境變數。
... 繼續閱讀 ...
有鑑於 Jenkins CI 連續性整合工具相對較少有專門針對 Windows 環境整理的文章,我將打算出一系列 Jenkins on Windows 文章,幫助 Windows 平台的開發人員可以更加順利的導入 CI 架構。我的第一篇文章將介紹如何有效地從 Jenkins 的 終端機輸出 (Console Output) 隱藏建置過程執行的 Batch 批次命令。
... 繼續閱讀 ...
前陣子在做一個網管的案子時,看到客戶端的 IT 人員在 Linux 底下執行了一個 watch 指令,設定每一秒執行一次 netstat -tna 指令,當下眼睛為之一亮,想不到原來有這樣一個好用的工具指令,可以設定固定時間自動重新執行一次,並檢視其結果,實在太方便啦。後來我也寫了一個 Windows 批次檔的版本,雖然沒辦法跟 Linux 下的 watch 指令相比,但也是還堪用啦。
... 繼續閱讀 ...
去年寫過一篇【精通 NLB:如何有效的執行「清空停止」動作 (含研究心得)】文章提到當 NLB Cluster 中的伺服器需要進行 Rolling Update 或 Rolling Reboot 時建議採用 清空停止 (drainstop),但是在流量大的時候實在很難預估到底還要多久才能真正讓作用中的連線全部中斷,只能癡癡的等,今天我就分享一個我之前寫的批次檔,可用 nlb 指令列工具幫我們查出到底還有多少連線在這台伺服器上。
... 繼續閱讀 ...
在 Linux 底下要找到執行檔所在路徑真的非常容易,只要輸入 which 指令就能找到了,不過在 Windows 底下卻異常的困難 (其實是不知道),所以都常在想說如果 Windows 的命令提示字元下也有 which 指令那該有多好,最近找到好幾套工具都覺得不適用又有 Bugs,但最後找到了一段非常非常精簡的 Batch 批次檔,可以用來幫忙查出執行檔所在位置,而且這段批次檔僅僅只有 90 個字元就達成任務。
... 繼續閱讀 ...
不管是在 Linux 下撰寫 Bash 指令檔或是在 Windows 下撰寫批次檔,最近一次程式執行的回傳代碼是非常重要的撰寫技巧這可以協助我們在撰寫自動化指令檔時能夠更有效的處理程式執行失敗的狀況,便可進一步撰寫條件式處理各種執行失敗的狀況,但是在 Windows 與 Linux 各有什麼異同之處呢?讓我們繼續看下去。
... 繼續閱讀 ...
最近從 Visual Studio 2010 的 建置部署套件 功能自動產生的網站安裝批次檔中學到一個批次檔的使用技巧,他可以透過批次檔直接讀取機碼(Registry)的資訊並擷取出執行檔所在路徑,這樣一來就不用將執行檔所在的路徑寫死在批次檔裡,是非常彈性的一種方法,藉此也剛好把批次檔的 FOR 語法的使用方式給釐清一番,這樣一來以後要透過批次檔讀取或解析文字檔就更方便了。
... 繼續閱讀 ...
每次從 Linux 搬檔案到 Windows 或是將檔案從 Windows 搬移到 Linux 下都有可能會需要轉換不同的換行字元,由於 Linux 下慣用的換行字元是 \n 而在 Windows 下卻是 \r\n,所以經常會有一些莫名的問題發生,例如用 Notepad 開啟 \n 斷行的檔案就會全部亂成一團,而在 Linux 底下也偶爾會遇到些問題,這時我們就可以再傳檔之前先將檔案轉換過即可,這時也需要依賴一些工具幫我們做轉換。
... 繼續閱讀 ...
從 Batch 取得日期時間還真囉唆,每次都要查資料 Copy / Paste 才能寫出計算日期時間的指令碼,最近有有需求要抓到「上一個月」的年份與月份,所以有用到數值運算的指令 ( SET /A ),所以乘機再整理一遍取得日期、時間欄位的程式碼。
... 繼續閱讀 ...