亚洲综合在线一区二区三区-日韩超碰人人爽人人做人人添-麻豆国产精品久久人妻-无码人妻丰满熟妇啪啪-天堂精品一区二区三区-99久久综合狠狠综合久久aⅴ

×

entr:文件更改時重新運行構建

分類:互聯網熱點 編輯:小新 瀏覽量:2
2020-07-13 16:55:23

這是一篇簡短的文章。我是最近才發現 entr 的,我很驚奇從來沒有人告訴過我?!因此,如果你和我一樣,那么我告訴你它是什么。

entr 的網站上對它已經有很好的解釋,也有很多示例。

總結在其頭部:entr 是一個命令行工具,當每次更改一組指定文件中的任何一個時,都能運行一個任意命令。你在標準輸入給它傳遞要監控的文件列表,如下所示:

或者

或者任何你希望的。

就像世界上的每個程序員一樣,我發現每次更改代碼時都必須手動重新運行構建/測試非常煩人。

許多工具(例如 hugo 和 flask)都有一個內置的系統,可以在更改文件時自動重建,這很棒!

但是通常我會自己編寫一些自定義的構建過程(例如 bash build.sh),而 entr 讓我有了一種神奇的構建經驗,我只用一行 bash 就能得到即時反饋,知道我的改變是否修復了那個奇怪的 bug。萬歲!

但是如果你正在運行服務器,并且每次都需要重新啟動服務器怎么辦?如果你傳遞 -r,那么 entr 會幫你的

另一個簡潔的標志是 -c,它讓你可以在重新運行命令之前清除屏幕,以免被前面構建的輸出分散注意力。

通常,我要跟 蹤的文件集和我在 git 中的文件列表大致相同,因此將 git ls-files 傳遞給 entr 是很自然的事情。

我現在有一個項目,有時候我剛創建的文件還沒有在 git 里。那么如果你想包含未被跟 蹤的文件怎么辦呢?這些 git 命令行參數就可以做到(我是從一個讀者的郵件中得到的,謝謝你!):

有人給我發了郵件,說他們做了一個 git-entr 命令,可以執行:

我覺得這真是一個很棒的主意。

git ls-files 的另一個問題是有時候我添加一個新文件,當然它還沒有在 git 中。entr 為此提供了一個很好的功能。如果你傳遞 -d,那么如果你在 entr 跟 蹤的任何目錄中添加新文件,它就會退出。

我將它與一個 while 循環配合使用,它將重啟 entr 來包括新文件,如下所示:

在 Linux 中,entr 使用 inotify(用于跟 蹤文件更改這樣的文件系統事件的系統)工作。如果用 strace 跟 蹤它,那么你會看到每個監控文件的 inotify_add_watch 系統調用,如下所示:

我希望這可以幫助一些人了解 entr!

【編輯推薦】

<div>程序員喜大普奔 Linux基金會確認開源技術不受美國出口管制 Linux停用“黑名單”,因為這是敏感詞,涉嫌種族歧視 Linux 上無痛文件提取 Linux下列出目錄內容命令 安裝Linux Mint 20后需要做的13件事
【責任編輯:龐桂玉 TEL:(010)68476606】

聲明:免責聲明:本文內容由互聯網用戶自發貢獻自行上傳,本網站不擁有所有權,也不承認相關法律責任。如果您發現本社區中有涉嫌抄襲的內容,請發

送郵件至:operations@xinnet.com進行舉報,并提供相關證據,一經查實,本站將立刻刪除涉嫌侵權內容。本站原創內容未經允許不得轉載,或轉載時

需注明出處:新網idc知識百科

免費咨詢獲取折扣

Loading
主站蜘蛛池模板: 国产精品导航一区二区| 男人女人午夜视频免费| 久久99亚洲精品久久69| 精品av国产一区二区三区| 国产熟女精品视频大全| 成人亚洲a片v一区二区三区日本 | 久久大香香蕉国产拍国| 国内永久福利在线视频图片| 亚洲av日韩av一区二区精品在线| 午夜av亚洲一码二中文字幕青青| 日韩电影一区二区你懂的| 欧美激情 一区 二区 三区| 久久国产乱子伦免费精品 | 国产日韩欧美久久一区| 成人国产一区二区三区精品| 国产日韩av免费无码一区二区| 97影院理论午夜伦不卡| 日本少妇xxx做受| 中文幕无线码中文字蜜桃| 久久久国产99久久国产久麻豆 | 国产亚洲精品久久久久久老妇小说 | 极品少妇小泬50pthepon| 精产一二三产区m553| 18禁止午夜福利体验区| 亚洲欧美日韩中文加勒比| 少妇无码一区二区三区| 人妻少妇精品久久| 欧美xxxxx高潮喷水麻豆| 老太脱裤子让老头玩xxxxx| 精品人妻伦九区久久aaa片| 国产乱子伦精品无码码专区| 国产国产人免费人成免费视频 | 一区二区三区高清视频一| 在线视频免费无码专区| 亚洲中文字幕久久精品蜜桃| 特黄特色三级在线观看| 久久国产乱子伦精品免费乳及| 丰满人妻熟妇乱又伦精品劲| 久久久久女人精品毛片| 无码爆乳护士让我爽| 99re6这里有精品热视频|