Dotfiles - 什麼是Dotfile以及如何在Mac和Linux中建立它

語言: CN / TW / HK

Dotfiles是重要的檔案,將在你作為一個軟體開發者的職業生涯中發揮不可或缺的作用。

首先,它們可以幫助你提高生產力。但不僅如此--你將能夠在任何機器上擁有你為自己創造的生產性設定。

這篇文章是關於如何開始使用dotfiles的介紹。

你將瞭解到它們是什麼,如何在你的系統中找到它們,以及如何建立幾個簡單的點陣檔案。此外,我還會給你一些建議和資源,說明如何定製你的設定和擴充套件你的知識。

讓我們開始吧!

什麼是dotfiles?

許多計算機軟體程式將它們的配置設定儲存在普通的、基於文字的檔案或目錄中。

點陣檔案是各種程式的配置檔案,它們幫助這些程式管理其功能。

將它們與普通檔案和目錄區分開來的是它們的字首。

Dotfiles之所以這樣命名,是因為每個檔案和目錄都以點開頭 (.)

在基於Unix的系統中,點檔案預設被作業系統隱藏。

常用點檔案的例子

大多數程式預設將它們的配置儲存在你的主目錄中。

你可能聽說過或使用過的一些常見的點檔案是。

  • 如果你使用Bash shell,你可能有一個.bash_profile.bashrc 檔案,這兩個檔案都包含了每次啟動新的終端會話和配置shell時載入的指令碼。
  • 如果你使用Zsh shell,它是MacOS的新的預設版本,你會有(或已經建立了)一個.zshrc 檔案,用於配置和定製shell。
  • 如果你使用命令列程式碼編輯器 Vim,你會把它的配置儲存在.vimrc 檔案中。
  • 在你的本地機器上設定和配置了Git之後,你會有一個.gitconfig 檔案,其中包含你所有的資訊和設定。
  • 許多程式,不是把它們的配置儲存在你的主目錄中,而是把它們儲存在你係統中隱藏的.config 目錄(資料夾)中。

如何找到Dotfiles

在Finder中,你的主目錄的根可能看起來像這樣。

Screenshot-2021-10-20-at-7.11.45-PM

但你已經看到,計算機系統中還儲存有許多預設隱藏的檔案。

要在Finder中檢視點狀檔案,請進入你的主目錄的根部,同時按住Command Shift . ,然後再按住鍵。

你很快就會看到各種點狀檔案,這些檔案要麼是你自己建立的,要麼是在你安裝某個軟體時建立的。

Screenshot-2021-10-20-at-7.12.04-PM

要從命令列檢視dotfiles(這是你最常使用和與它們互動的地方),你又得在你的搜尋中增加一些額外的步驟。

列表命令,ls ,列出了當前目錄下的所有檔案和目錄,預設情況下不顯示點陣檔案--儘管它們就在那裡。

首先,導航到你的主目錄。如果你還沒有到那裡,你可以使用cd 命令來幫助你到達那裡。

然後使用帶有-a 標誌的ls 命令,它代表all ,像這樣。

shell ls -a

如果你想看到關於你的檔案的一些額外資訊,你也可以使用-l 標誌,它以長格式列出檔案和目錄,包括關於它們被建立的日期和時間、它們的大小等細節。

shell ls -la

在輸出中,你會看到你當前的主目錄中的所有檔案和目錄--包括所有隱藏的檔案和目錄。

Screenshot-2021-10-19-at-1.37.15-PM

每個以句號/點開頭的檔案和目錄都是一個點檔案。

為什麼要使用點陣檔案?

你的點陣檔案是你個人的。

你花了足夠多的時間來微調你的設定。你策劃了最適合你的工作流程、審美和偏好的配置和設定。而你最終擁有一個能幫助你個人提高生產力的開發環境。

如果在你花了那麼多時間之後,你現在不得不切換到一個新的、不同的機器上呢?這是否意味著你必須從頭再來?

你怎麼會記得你所用的確切設定和命令呢?

或者,如果你有第二臺機器,而你希望你的設定在兩個系統上完全一樣,那該怎麼辦?

開發者的主要目標之一是使重複性的工作自動化。

當你想設定一臺新的電腦並安裝你為前一臺電腦建立的完全相同的設定時,建立一個由原始碼控制並託管在GitHub上的dotfile倉庫將節省你的時間。

這樣,你的所有設定和偏好都可以在其他機器上重複使用並保持一致。

如何建立Dotfiles

如何設定一個資料夾來存放你的dotfiles

把你所有的dotfiles放在自己的資料夾裡是一個好的做法。

為了簡單起見,我將展示一個例子,說明如何在你的主目錄根部建立一個資料夾。但你可以把資料夾新增到對你來說更方便的地方。

另外,我將展示如何建立.zshrc.vimrc 檔案的例子,但類似的想法適用於你建立的任何其他點檔案。

導航到你的主目錄 (cd) 並建立一個名為dotfiles 的目錄,該目錄將存放你所有的配置檔案。

shell mkdir dotfiles

要建立dotfiles,你可以使用touch 命令,並將檔名作為引數傳給該命令。檔名前面會有一個句號。

要在dotfiles 目錄中建立一個.zshrc 和一個.vimrc 檔案,請這樣做。

shell touch ~/dotfiles/.zshrc ~/dotfiles/.vimrc

如果這些檔案已經存在於你的系統中,你想把它們移到dotfiles 目錄中,你可以使用mv 命令把它們移到那裡。

shell mv ~/.zshrc ~/dotfiles/

第一個引數是檔案的當前路徑--斜體字(~)代表主目錄(home direcory)。預設情況下,大多數隱藏的配置檔案都位於這裡。

第二個引數是你想把檔案移到的路徑。在這個例子中,你想把它移到位於主目錄中的dotfiles目錄。

你可以對.vimrc 檔案做同樣的處理。

shell mv ~/.vimrc ~/dotfiles/

要檢視檔案。

shell ls -a dotfiles . .. .vimrc .zshrc

有了這些檔案,你就可以在那裡新增所有你喜歡的配置。

如何設定配置

下面是一些想法,可以幫助你啟動你建立的點陣檔案的配置。

如何使你的Zsh提示符個性化

在設定了.zshrc 檔案後,任何新增到該檔案中的東西都會影響你的Zsh shell程式的定製。

現在可能是自定義你的shell提示符的時候了。這將是你個人的口味,但這裡有一些資源可以讓你開始。

如何定製Vim

在建立了.vimrc 檔案之後,你可以自定義命令列文字編輯器Vim。這裡有一些資源可以幫助你開始這個過程。

什麼是別名和函式

改善你的工作流程和提高你的生產力的方法之一,是減少你經常使用的命令的輸入時間。你可以通過建立快捷方式來實現這一點。

別名是終端命令的快捷方式。它們是一個長命令的簡短版本。

作為一個開發者,你會經常使用Git,所以建立Git別名是個好主意,可以幫助你節省冗長、重複的Git命令的時間。請閱讀FreeCodeCamp的文章,瞭解一些最有用的別名。

另一個節省時間的方法是簡化流程。

你可以通過建立一個孤立的行為來完成一個特定的工作,從而將兩個命令合併成一個。你可以通過建立函式來做到這一點。

建立的一個有用的函式是將建立一個新目錄的命令(mkdir )與改變目錄的命令(cd )結合起來。

通過這種方式,你將建立一個新的資料夾,並立即進入該資料夾--所有這些都在一個步驟中。

這樣做的函式看起來像這樣。

shell function mkcd() { mkdir -p "$@" && cd "$_"; }

要想了解Zsh和函式,請看這篇關於Scripting OS X的文章,其中包括Zsh的別名和函式

你可以把別名和函式都新增到你的.zshrc 檔案中,或者你可以建立單獨的.aliases.functions dotfiles。

如何連線你的Dotfiles

你可能已經注意到,你新增到dotfiles 資料夾中的設定對你的系統沒有任何影響。

如前所述,一個程式的配置檔案是隱藏的,預設情況下儲存在主目錄中。這是程式將尋找和讀取其設定的地方。

這是一個好主意,將dotfiles 目錄中的檔案與你建立的其他檔案一起,與它的預設主目錄中的檔案進行符號連結(或建立一個符號連結-a指標),你在這裡儲存了你的首選設定。

這就像該檔案將同時出現在兩個地方!

該檔案將同時出現在dotfiles 目錄中,在主目錄中也會有一個 "副本"。

要建立一個連結,你可以使用ln (代表連結)命令和-s 引數(代表符號)。

下面是如何將.zshrc.vimrc 檔案進行符號連結。

shell ln -s ~/dotfiles/.vimrc ~/.vimrc ln -s ~/dotfiles/.zshrc ~/.zshrc

這將使你使用的程式知道它們的配置檔案通常在哪裡--回到主目錄中。

```shell ls -l ~/.zshrc

lrwxr-xr-x 1 dionysialemonaki staff 39 Oct 21 18:30 /Users/dionysialemonaki/.zshrc -> /Users/dionysialemonaki/dotfiles/.zshrc ```

看一下.zshrc 檔案的細節,它顯示位於主目錄的檔案指向dotfiles目錄的檔案。-> 表示符號連結。

手動連結你所有的dotfiles是一個繁瑣的過程,當你在資料夾中新增更多的dotfiles時,會很快變得令人厭煩和重複的。

為了使這個過程更容易,你可以建立一個shell指令碼,在你建立的dotfiles上自動呼叫ln -s ,或者使用一個工具來完成這個工作。

如何版本控制你的dotfiles

對檔案進行版本控制,可以幫助你跟蹤你對檔案所做的所有修改,也可以讓你在GitHub上分享它們。

請確保將目錄換成dotfiles 目錄(cd dotfiles)。

按照以下步驟,在 git 倉庫中組織你的檔案。

  1. 初始化倉庫。

shell git init

  1. 新增所有你到目前為止建立的檔案。

shell git add .

  1. 提交修改並新增提交資訊。

shell git commit -m "Added dotfiles"

如何在GitHub上託管你的dotfiles

確保你已經登入了你的GitHub賬戶。

然後,建立一個新的倉庫。

Screenshot-2021-10-21-at-5.21.59-PM

給它起個名字,點選 "Create repository"。

接下來,在命令列中,新增。

```shell git remote add origin url

where 'url',the GitHub url of the repository you previously created

ending in .git

```

最後。

shell git push -u origin main

現在你就可以線上分享你的dotfiles了!

總結

你已經知道了--你現在知道了dotfiles的基礎知識!我希望你覺得這個教程很有幫助。

你的dotfiles專案很可能會伴隨你的整個職業生涯,並且會隨著你對dotfiles本身的瞭解而增長。它也會隨著你通過大量的試驗和錯誤瞭解你喜歡和不喜歡的工作流程和開發環境設定而改變。

謝謝你的閱讀!


Dionysia Lemonaki

Dionysia Lemonaki

每天學習新的東西,並寫下它


如果你讀到這裡,請發推特給作者,向他們表示你的關心。鳴謝

免費學習程式碼。freeCodeCamp的開源課程已經幫助超過40,000人獲得了作為開發者的工作。開始吧