經過python包管理工具
命令行輸入html
$pip install cookiecutter
或者python
# mac os常常會禁止用戶全局安裝python包 $pip install --user cookiecutter
若是使用的是anaconda,想使用conda
安裝,能夠git
$conda config --add channels conda-forge $conda install cookiecutter
特別提醒:要保證Python在你的系統PATH路徑下,同時保證bin
目錄在你的系統PATH路徑下。特別提醒,anaconda安裝的Python,其安裝的python執行文件默認不在系統路徑下,通常在·$ANACONDA/bin·,請將其放置在系統路徑下。
github
經過系統的包管理json
ubuntuubuntu
$sudo apt install cookiecutter
mac osbash
$brew install cookiecutter
Cookiecutter模板的形式:cookie
針對具體形式分別使用相同的命令形式:編輯器
# 模板文件夾 $ cookiecutter /path/to/template # 模板文件夾zip壓縮包文件 $ cookiecutter /path/to/template.zip # 模板文件夾的git地址 $ cookiecutter git地址 $ cookiecutter https://github.com/audreyr/cookiecutter-pypackage.git --checkout develop # 模板文件夾zip壓縮文件URL $ cookiecutter https://example.com/path/to/template.zip # 模板文件夾在cookiecutter目錄(缺省會~/.cookiecutters/目錄下) $ cookiecutter 模板名字
特別針對有密碼的zip文件,cookiecutter回給出提示符讓你輸入密碼,若是想跳過密碼輸入,能夠設置COOKIECUTTER_REPO_PASSWORD
環境變量,在zip文件須要密碼的時候會自動填入該環境變量的值。工具
總體須要注意的:
〜/.cookiecutters/
目錄中Cookiecutter功能原理是獲取模板的源目錄樹並將其複製到新項目中,將在模板用{{
和}}
標記中找到的全部名稱替換爲cookiecutter.json
文件中找到的名稱。
替換的名稱能夠是文件名、目錄名和文件中的字符串。
使用Cookiecutter,你能夠輕鬆地從一個標準表單引導一個新項目,這意味着在開始一個新項目時,你能夠跳過全部常見的錯誤,拜託瑣碎操做帶來的時間消耗以快速開始有真正意義的工做。
如下以一個簡單的「Hello World」來介紹Cookiecuter的建立過程:
首先,在您的計算機上建立一個目錄。這個目錄的名稱將是您的Cookiecutter模板的名稱,可是它並不限制任何其餘內容——例如,生成的項目不須要使用模板名稱。咱們將項目名稱設爲HelloWorld
$ mkdir HelloWorld $ cd HelloWorld
咱們在此目錄中建立要複製到生成項目中的目錄樹。咱們想要爲此目錄生成一個名稱,因此咱們將目錄名稱放在模板標籤中:
$ mkdir {{ cookircutter.directory_name }} $ cd {{ cookircutter.directory_name }}
模板標記中的任何內容均可以放在名稱空間中。cookiecutter.directory_name
將被從cookiecutter.json
文件中查找,由於該項目是由Cookiecutter生成的。
現 咱們在將要被複制的目錄樹中。對於這個最簡單的Cookiecutter模板,咱們打算只包含一個文件。一樣,咱們但願從cookiecutter.json
中查找文件名,所以咱們將其命名爲:
$ touch {{cookiecutter.file_name}}.py
(touch
會建立一個空文本文件;你能夠在編輯器中打開它)。 如今編輯文件,使其包含:
print("Hello, {{cookiecutter.greeting_recipient}}!")
最後,咱們來建立cookiecutter.json
文件,以便Cookiecutter能夠查找咱們所須要模板項。
{ "directory_name": "Hello", "file_name": "Howdy", "greeting_recipient": "Tacey" }
如今咱們能夠運行Cookiecutter並從模板建立一個新項目。切換到要建立新項目的目錄。而後運行Cookiecutter並將模板所在的目錄傳給它。
$ cookiecutter /the/path/of/HelloWorld directory_name [Hello]: file_name [Howdy]: greeting_recipient [Tacey]:
Cookiecutter告訴咱們每一個項目的默認名稱是什麼,併爲咱們提供了用新名稱替換該名稱的選項。在這種狀況下我只是簡單的按回車接受全部的默認值~
如今咱們生成了一個名爲Hello
的目錄,其中包含一個文件how .py
。當咱們運行它:
$ python Howdy.py Hello, Tacey!
Wow!這就完事兒了~
到了這裏,若是你在開始新項目時發現本身在重複工做,你就已經會知道如何使用cookiecutter消除這種無謂的重複了。對於一些常見的項目,不妨嘗試選擇使用Cookiecutter: 更好的項目模板工具:(1)簡介及可用資源彙總中的某個模板~~~~~