作為乙個程式後台開發人員,往往會檢視程式執行的日誌來分析當前程式執行的情況及異常問題排查。那必不可少的是如何高效的操作日誌檔案;本人之前常用的命令一般為tail、cat、vi(或vim)。要獲取錯誤日誌從何開始時可能要遍歷整個日誌檔案,使用cat缺省會快速翻到最後一行,若使用vi則把檔案都載入到記憶體中長時間不能開啟且可能影響伺服器的正常執行(尷尬)。
從檔案尾部擷取資料。tail也是工作中最常用的命令,因為可以利用-f選項,一直重新整理獲取檔案尾部最新資料。常用獲取當前檔案動態資訊
引數
-n: 檢視後n行資料,注意當n後面值帶「+」號表示從第x行開始, 如tail -n +1000 test.txt
-f: 展示檔案後面
#如獲取當前日誌末尾5行:tail -5 日誌檔名稱
tail -5 info.log
#如獲取當前日誌第30行後日誌:tail -n 30 日誌檔名稱
tail -n 30 info.log
#如重新整理當前日誌資訊: tail -f 日誌檔名稱
tail -f info.log
一般用於小檔案的全部讀取,若出現大的檔案會快速翻到最後一行。
引數:
-a:相當於-vet的整合, 可以列出一些特殊字元而不是空白而已
-b:列出行號,進針對非空白行做行號顯示,空白行不會標記
-e:將結尾換行符$顯示出來
-n:列印出行號,連同空白行也會有行號,與-b的選項不同
-t: 將[tab]鍵以^i顯示出來
-v: 列出一些看不出來的特殊字元
#如顯示檔案行號
cat -n 檔名稱
tac指令與cat的指令引數一樣,只是檔案顯示順序剛好和cat相反,一般很少使用。
按鍵/命令
空格鍵(space):向下翻頁
回車(enter):向下翻行
/字串:在當前顯示的內容(翻頁進度位置),向下查詢這個字串關鍵字
:f:立刻顯示檔名以及目前位置的行號
q::退出當前檔案的瀏覽
b或ctrl+b:往回翻頁
#如檢視檔案資訊(more 檔名稱)
more info.log
less命令比more更富有靈魂,可以前後翻頁,不止可以向上查詢,也可以向下查詢。
按鍵/命令
[pagedown]:向下翻頁
[pageup]:向上翻頁
/字串:在當前顯示的內容(翻頁進度位置),向下查詢這個字串關鍵字
?字串:向上查詢字串
n:重複前乙個查詢,與/或?有關, 比如前乙個命令是?表示向上查詢,此時n會向上查詢
n: 反向的重複前乙個查詢
g:跳轉到當前檔案資料的第一行
g:跳轉到當前檔案資料的最後一行
q:退出當前檔案的瀏覽
#如檢視檔案資訊(less檔名稱)
less info.log
注意:使用cat + more(less)指令搭配更有感覺哦,自行發現
head命令用來提取檔案的前n行,一般配合使用-n選項。
引數
n:當指定的行數為負數-x時,則會列印出除了後面x行的其他所有資料。
#獲取前5行資料
head -5 info.log
head -n 5 info.log
#獲取從第5行開始資料
head -n -5 info.log
解鎖自定義分享功能新姿勢
第三方工具包往往會收集一些使用者資料,還有一些網路請求 第三方也會制定自己的規則,有時候功能不能滿足產品的特殊需求 直接使用官方分享 的話,過於鬆散,使用不方便,不易維護 既然第三方的工具類使用方便,官方 鬆散。其實第三方的工具包也是封裝的官方分享的 那我們不妨自己也封裝乙個符合自己專案,乙個更加輕...
解鎖新姿勢 如何用配置中心實現全域性動態流控?
當資源成為瓶頸時,服務框架需要對消費者做限流,啟動流控保護機制。流量控制有多種策略,比較常用的有 針對訪問速率的靜態流控 針對資源占用的動態流控 針對消費者併發連線數的連線控制和針對並行訪問數的併發控制。在實踐中,各種流量控制策略需要綜合使用才能起到較好的效果。在分布式架構中,應用和應用之間的呼叫型...
黑科技扎堆網際網路大會 科技解鎖生活「新姿勢」
這一次,全球網際網路大會又在烏鎮如期舉行了。與往年不同的是,這一次的網際網路大會,馬化騰 李彥巨集 雷軍 丁磊 周鴻禕等大佬幾乎異口同聲的認為掌握了人工智慧也就抓住了未來。而在網際網路大會的現場,這一次烏鎮也雲集了來自醫療 教育 汽車等各個領域的黑科技,不可否認的是,ai正在全面加速改變和影響人類生...