你有想過幫你在 Terminal 執行的指令計算執行時間嗎? 前陣子因為工作上的需求,用各種指令兜了一個檔案分類工具出來,但因為對效能有嚴格的要求,需要在指定時間內完成,所以查到 time 這個好用的指令可以幫我們計算指令的執行時間。
作者: Karl
JavaScript 計算函式執行時間
要在 JavaScript 計算函式的執行時間,可以用現在的 Timestamp 和函式執行後的 Timestamp 相減,即可獲得執行時間,大多數人都會用 new Date().getTime() 來取得時間戳,但如果你的函式執行時間小於 1 毫秒,就會因為 Timestamp 最小單位只到毫秒而無法計算執行時間,因此在這建議使用 Window.Performance API,它可以提供從網頁載入到現在的豪秒數,精確度到千分之一毫秒。
還在煩惱怎麼錄製 GIF 嗎? 讓 LICEcap 來幫你!
Linux Grep Tips – 搜尋有指定字串的列
在 Linux 裡面有時我們會需要從檔案中快速的搜尋帶有關鍵字的「列」,例如在看 log 時可能會想找出某個時間發生的錯誤,打開檔案一行行找實在不怎麼經濟實惠,這時你就會需要 grep 的幫助啦!
如何確認我的 Crontab 正常運作?
不知道大家是否都有同樣的煩惱? 剛學會 crontab 時,始終不確定自己的設定是否正確,每次設定完都不確定是否有照預期的跑,在這我分享兩招可以讓大家確定自己的 crontab 是否正確設定!
Kibana Date Type Field Query
在 Kibana 裡面,想要搜尋某段時間內的資料,第一個一定是想到 Kibana 內建的 Time Picker,不得不說這真的是很好用的工具,但少數情況你的資料可能不只一個日期欄位,而你必須用 Query 的方式而非 Time Picker 處理,例如 Email 的資料,寄信、開信、點擊都會有 Log 傳到我的伺服器,這時候會有兩個時間,一個是信件寄出的,另一個則是事件發生的時間(例如開信、點擊),像這樣的情況就可能會需要在搜尋框裡面用日期欄位做搜尋。
Using Command to Display Notification on macOS
在 macOS 有個很方便的通知中心,你可以寫程式傳送訊息到通知中心,就會像 iOS 那樣顯示在螢幕上,但其實如果你是要傳送訊息的話,可以直接在 Terminal 一個指令搞定哦! 不用從頭去學 Objective-C 或 Swift 也可以使用 macOS 的通知功能; 像每次在等測試執行時,總會想善用時間讀讀文件,這時就可以用 Notification 來通知自己測試是否執行完成,不用擔心看文件看得太開心忘記測試還在執行,當測試完成你也會及時收到通知,一刻都不浪費! 當然也不只測試可以這樣用,因為這個 Notification 是以指令的方式存在,所以只要是在 Terminal 執行的程式都可以做到一樣的功能哦!
Rails Capybara Feature Testing 踩雷日記
用一句話形容今天,大概是「第一次學 Capybara 踩地雷就上手」,花了整整六小時(以上)在寫兩個簡單的測試,途中遇到各種有趣的地雷,不寫一篇文章紀錄這慘烈的一天我怕今天氣到睡不著覺。 先聲明,這是第一次寫測試,所以有些觀念可能是錯誤或過舊的,歡迎大家留言告知,一定立刻修改,這不是一篇技術文,而是一篇發洩文(怒)
WTF Elastic X-Pack License – How to uninstall X-Pack
如果你透過搜尋引擎找到這篇文章,想必對 X-Pack 跟我一樣有著滿滿的怨念。最開始覺得 X-Pack 是個免費好用的外掛就把它裝到 Elasticsearch 跟 Kibana 身上,結果過了 30 天才看到提示說因為 License 過期,你需要去「更新授權碼」,否則不能登入 Kibana,其實到這邊我都還以為是註冊一個帳號就可以拿到新的授權碼,結果到官方網站看了很久,我沒有看到任何關於授權、費用、購買之類的文字(後來發現其實有,很小… 你們是有沒有想賺錢阿),最後竟然是靠 Google 搜尋才找到價格方案的頁面。
JavaScript String Replace All
在 JavaScript 使用 String.replace 時要注意它可能和你預期的行為不同,當你想取代某個字串時,你會發現 replace 只取代了第一個字串,例如 “AAA”.replace(“A”, “B”),你預期會得到 “BBB” 但實際上你會得到的是 “BAA”,這是因為 JS replace 的第一個參數其實是 Regex 而非字串,如果你輸入字串,就只會取代第一個遇到的字串,導致和預期不同的問題。