如何在命令行上初始化你的 KiCAD 5 项目
**注意:**此文章适用于 KiCad 5,如果你使用 KiCAD 10(2026 年发布),请查看如何在命令行上初始化你的 KiCAD 10 项目。
如果你使用 KiCAD 6(2021 年发布),这不是适合你的文章!请参见如何在命令行上初始化你的 KiCAD 6 项目
*注意:*此脚本以推荐配置(即具有项目特定的封装和符号库)初始化 KiCAD 项目。如果你想初始化空项目,请参见如何在命令行上初始化空 KiCAD 项目
TL;DR:
在你想创建项目的目录内,运行
kicad-init.sh
wget -qO- https://techoverflow.net/scripts/kicad-init.sh | bash /dev/stdin MyProject你应该将 MyProject(命令末尾)替换为你的项目名称。
*注意:*这将初始化一个没有任何库的空 KiCAD 项目。这等同于在 KiCAD 本身中创建新项目(使用 GUI)。
工作原理
我们的脚本是一个简单的 bash 脚本,创建手动创建新项目时 KiCAD 创建的文件。
它将创建这些文件(MyProject 是默认项目名称,但你可以使用命令行参数修改它):
MyProject.pro:项目文件MyProject.sch:空原理图MyProject.kicad_pcb:空 PCBsym-lib-table:项目的原理图符号库列表libraries/MyProject.lib:原理图符号库libraries/MyProject.dcm:原理图符号的元数据。fp-lib-table:项目的封装库列表libraries/footprints:存储项目特定封装(.kicad_mod文件)的文件夹libraries/3D:此文件夹应用来存储 3D 模型(例如 STEP 文件)
这些文件仿照 KiCAD 5.1.4 制作,但我们期望它们适用于任何最近的 KiCAD 版本。
kicad-init.sh
#!/bin/bash
# TechOverflow KiCAD 项目初始化器(具有项目 FP 和 SYM 库)
# Usage: $0
if [ $# -ne 1 ]
then
echo "Usage: $0 "
exit 1
fi
# 计算项目名称和路径
proj=$(basename "$1")
dir=$(dirname "$1")
# 创建项目文件
cat < ${1}.pro
update=22/05/2015 07:44:53
version=1
last_client=kicad
[general]
version=1
RootSch=
BoardNm=
[pcbnew]
version=1
LastNetListRead=
UseCmpFile=1
PadDrill=0.600000000000
PadDrillOvalY=0.600000000000
PadSizeH=1.500000000000
PadSizeV=1.500000000000
PcbTextSizeV=1.500000000000
PcbTextSizeH=1.500000000000
PcbTextThickness=0.300000000000
ModuleTextSizeV=1.000000000000
ModuleTextSizeH=1.000000000000
ModuleTextSizeThickness=0.150000000000
SolderMaskClearance=0.000000000000
SolderMaskMinWidth=0.000000000000
DrawSegmentWidth=0.200000000000
BoardOutlineThickness=0.100000000000
ModuleOutlineThickness=0.150000000000
[cvpcb]
version=1
NetIExt=net
[eeschema]
version=1
LibDir=
[eeschema/libraries]
EOT
# 创建原理图文件
cat < ${1}.sch
EESchema Schematic File Version 2
EELAYER 25 0
EELAYER END
\$EndSCHEMATC
EOT
cat < ${1}.kicad_pcb
(kicad_pcb (version 4) (host kicad "dummy file") )
EOT
#
# 创建原理图符号库映射
#
mkdir -p ${dir}/libraries
cat < ${dir}/sym-lib-table
(sym_lib_table
(lib (name ${1})(type Legacy)(uri \${KIPRJMOD}/libraries/${proj}.lib)(options "")(descr ""))
)
EOT
cat < ${dir}/libraries/${proj}.lib
EESchema-LIBRARY Version 2.4
#encoding utf-8
#
#End Library
EOT
cat < ${dir}/libraries/${proj}.dcm
EESchema-DOCLIB Version 2.0
#
#End Doc Library
EOT
#
# 创建封装库映射(只是空目录)
#
mkdir -p ${dir}/libraries/footprints
cat < ${dir}/fp-lib-table
(fp_lib_table
(lib (name ${proj})(type KiCad)(uri \${KIPRJMOD}/libraries/footprints)(options "")(descr ""))
)
EOT
#
# 创建 3D 模型目录。
# 搜索路径可能需要手动配置
# 因为它不存储在项目中
#
mkdir -p ${dir}/libraries/3D
#
# 创建 .gitignore
#
cat < .gitignore
*-bak
*-cache*
*-bak*
_autosave*
EOT例如使用以下命令运行
run_kicad_init.sh
bash kicad-init.sh MyProjectCheck out similar posts by category:
Electronics, KiCad, Shell
If this post helped you, please consider buying me a coffee or donating via PayPal to support research & publishing of new posts on TechOverflow