ref: https://cmdchallenge.com/#/hello_world
今天分享的是一個有趣的 Command Line Interface(CLI) 挑戰,該挑戰主要是基於 Linux bash 的環境有一系列的指令挑戰
挑戰內容基本上都不會太困難,一開始都是非常基礎的 Linux 指令操作,後面會需要使用 grep, sed, awk, find 等不同指令的組合來完成任務。
大部分的題目都會基於一些情境,譬如想要針對 httpd server 底下的 log 進行過濾,計算符合某些內容的行數等等
每道題目除了自行挑戰外也可以看一下別人的解決方案,不過解決方案中有一些是作弊的內容,譬如直接針對題目用 echo 輸出之類的,就滿搞笑的。
我認為這類型的挑戰有兩個值得去玩看看的理由
1. 測試自已是否能夠解決每一個問題,順便看一下自己的解決方式跟別人的比起來如何,有時候會有一些意想不到的指令與用法可以讓整個寫法更為簡潔
2. 如果有面試需求的時候,可以考慮從這邊找一些相關題目,看看面試者對於 shell script 的熟悉度,同時互相討論每個解法的好壞處。
歡迎愛寫 shell script 的人都寫一遍看看
grep行數 在 使用Linux grep 搜尋字串用法與範例 的推薦與評價
將cat 的輸出導向grep 搜尋字串 · 使用grep 指令排除一個字串或多個字串 · grep 顯示彩色輸出 · grep 顯示行數 · grep 顯示匹配結果的前後內容. ... <看更多>
grep行數 在 [Linux/Mac] 搜尋資料夾底下檔案內部文字 - Max的程式語言筆記 的推薦與評價
這個指令在Mac OSX/ linux 下都通用。grep 指令相關用法: ... 將binary 檔案以text 檔案的方式搜尋資料-A<顯示行數> --after-context=<顯示行數> ... ... <看更多>
grep行數 在 Chinese translation of grep is a beautiful tool - Discover gists ... 的推薦與評價
輸出所有開頭是function的代碼,並且包含行數和文件名### grep -EHn "^s*(function w+|w+ = function)" *.js # -E是regex,H是文件名,n是行數. ... <看更多>