用 shell 腳本批量拉取更新 Antd 依賴庫,rc-component倉庫的項目
需求背景
有時候看 api 沒法實現的需求、想看下源碼怎麼寫的,一般得一個一個去對應的 github 項目地址 clone,比較麻煩,也容易遺漏node
實現思路
可能方法有點蠢,稍微分析一下我去拉取的過程,不想看的話直接看技術實現 🐶react
- 查看 rc-component 的 github 地址,倉庫內有 94 個項目,切換分頁時候並非返回的 json 數據,而是 string,因此我點開了它的homePage
-
- 這個頁面就像我喜歡的樣子,全部的項目信息都在了,咱們要的無非就是 git 地址
- 由於在瀏覽器上用 JQ 遍歷的信息打印再控制檯很差操做
- 因此決定用 node+cherrio 去獲取 dom 信息,而後讀寫到 txt 就行了
- 我想爬到全部的 github 地址信息,而後用 shell 腳本去遍歷而後 clone 和 update
技術實現
- 拿到 homePage 的頁面,用cheeio解析成 dom,而後就能夠想 jq 同樣的操做 dom 了
- 有個 node 中文版主的快速入門的教程推薦下
- 將拿到的全部項目地址寫入 txt
- shell 腳本遍歷 txt,執行 clone,update
demo 步驟
yarn
node index.js
: 生成 txt,詳見代碼
bash clone.sh
: 批量 clone
bash pull.sh
: 遍歷當前文件夾下又.git 的項目,而後執行 git pull