The Will Will Web

記載著 Will 在網路世界的學習心得與技術分享

如何在任意主機查詢對外的 IP 地址

我偶爾會需要查詢當前主機的對外 IP 地址 (出口 IP 地址),其實提供這種服務的網站很多,你可以透過瀏覽器開啟網頁查詢 IP 地址,也可以透過 curl 命令列工具查詢。不過,最近我常用的 ifconfig.co 因為掛上了 Cloudflare 的 CDN,同時又啟用了防機器人功能(Cloudflare Bot Management),導致我透過 curl 就抓不到 IP 了,感覺十分困擾。這篇文章我整理一些不同的選項,讓你可以在任意主機上查詢對外 IP 地址。

... 繼續閱讀 ...

在高度網路管制的企業內部如何設定 Git 連接 Azure Repos 上的儲存庫

我每年都會有好幾場 Azure DevOps 的企業內訓,最近的一場是在一家金融業的企業,他們的網路管制非常嚴格,但是有特別開放 Azure DevOps Services 的雲端服務,所以基本上連線是正常的,唯獨 Git 連接 Azure Repos 上的儲存庫時,就會遇到連線問題。今天這篇文章我就來說說解決方案。

... 繼續閱讀 ...

如何讓 AutoHotkey 的 TrayTip 命令成功顯示訊息在 Windows 10 的通知中心

如果你是 Windows 10,在使用 AutoHotkey 的時候可以透過 TrayTip 來顯示通知訊息, 他預設會顯示在 Windows 的通知中心 (視窗最右下角),不過在預設安裝下,這個功能可能會失效。今天我就來說說這個問題的解法。

... 繼續閱讀 ...

如何透過 LINQPad 撰寫自動化作業並搭配 CI 自動執行

我現在大多數自動化的小工具都是使用 LINQPad 來撰寫,執行速度快且管理方便,但是在 CI/CD 環境中,LINQPad 並不是一個常見的工具,還好 LINQPad 有提供 LPRun 工具,可以直接把現成的 *.linq 檔案直接拿來當成腳本執行,因此拿來 CI 的環境用是非常方便的,完全可以當作 C# 腳本來使用。這篇文章我就來介紹一下 LPRun 使用的方式。

... 繼續閱讀 ...

啟用 MFA 多因素認證的 Microsoft 365 帳號如何透過 SMTP 發送電子郵件

今天同事回報公司的網路印表機突然無法發送郵件,原本設定好好的運作了三年相安無事,怎麼就突然壞掉了呢?經過一番檢查後發現,原來是因為公司的 Microsoft 365 帳號啟用了 MFA 多因素認證的關係,導致設備無法透過 SMTP 發送郵件。但因為這是一個系統帳戶,根本沒人會去動它,看來是雲端平台的更新導致這個問題,這篇文章我就來說說這次的靈異事件。

... 繼續閱讀 ...

如何以最小下載量的方式取得 Git Repo 中特定資料夾下的特定檔案類型

我在一小時 No-Code 打造可搜尋的 AI 知識庫系統 (RAG)課程中有準備一個知識庫範例,可以將整份 angular.dev 網站轉成知識庫所需的文字檔案。由於 angular.dev 網站內容都是開源的,放在 GitHub 的 angular/angular Repo 中的 adev 目錄下。但這個 Repo 有 30,486 個 Commits,檔案數與下載量都非常大,如果只想取得特定目錄下的檔案,就需要動用一些 Git 的進階技巧,今天我想來分享一下我是如何快速下載 Git Repo 中特定資料夾下的所有 *.md 檔案,並且批次轉成 *.txt 的過程。

... 繼續閱讀 ...

分享一個讓老舊 Windows 筆電執行速度更快的方法

我的 Lenovo ThinkPad X1 Carbon 筆電跟了我六年,用到連延長保固都用掉了,就是用不壞,我只有在第五年的時候鍵盤的 SHIFT 鍵被我打斷,換了一個新的鍵盤面板而已,我覺得這台筆電真的用的很超值。好說這台在六年前也是台頂規筆電,但是隨著 Windows 10 太久沒重灌,這台筆電的執行速度也越來越慢,但因為我一直都有在企業內訓授課,重灌筆電會浪費我太多時間,所以我一直遲遲沒有做這件事。最近我終於找出了電腦速度變慢的原因,現在速度都回來了,想知道我怎樣解決這個問題,就請繼續看下去!

... 繼續閱讀 ...

深入探討 Git 中的 Unreachable (無法到達的) 物件與清理方法

在使用 Git 進行版本控制時,我們只要使用 git rebasegit commit --amendgit reset 多多少少都會殘留一些無法到達的物件 (unreachable blob or commits)。這些無法到達的物件雖然不會直接影響我們的日常工作,但它們會佔用儲存空間,並可能在某些情況下引起混淆,例如明明檔案不多,但是卻佔用大量磁碟空間。今天我將深入探討什麼是 unreachable 物件,並詳細介紹如何有效地清理它們。

... 繼續閱讀 ...

使用 Visual Studio 2022 可透過 .editorconfig 鎖定文字檔案的儲存編碼格式

我們長久以來一直有一個蠻困擾的事情,就是 Visual Studio 2022 在存檔的時候,他不一定會將程式碼自動儲存成 UTF-8 編碼,若以 Big5 編碼來儲存文字檔案時,在其他程式讀取時就有可能出現異常。例如我們的程式碼都會需要 git push 到 Azure DevOps 的 Repos 中,若程式檔的編碼為 Big5 的時候,這些中文字在 Azure DevOps 上面都無法正常顯示,也就是我在 Code Review 時看到的都會是亂碼,真的是不勝其擾。這篇文章我就來告訴你怎樣解決!

... 繼續閱讀 ...