INI Cheatsheet - INI Configuration Reference

把 INI 配置文件最常用的语法整理成速查,写配置时对照查。

Config Formats·52 commands·Last updated 2026-07-21
Back to Config Formats

基础语法 7

; 这是注释
分号注释(最通用)
# 这也是注释
井号注释(部分解析器支持)
[section]
节(section)定义
key = value
键值对(等号两边空格可选)
key = "quoted value"
带引号的值
key =
空值
; key = commented out
注释掉键值对

数据类型 7

string = hello
字符串
integer = 42
整数
float = 3.14
浮点数
boolean = true
布尔值(true/false/yes/no/on/off)
array = value1,value2,value3
数组(逗号分隔)
hex = 0xFF
十六进制(部分解析器支持)
percent = 50%
百分比值

常见应用 5

[database]\nhost = localhost\nport = 3306
数据库配置
[server]\nlisten = 8080\nmax_connections = 100
服务器配置
[logging]\nlevel = info\nfile = /var/log/app.log
日志配置
[user]\nname = Alice\nemail = alice@example.com
用户配置
[cache]\ndriver = redis\nttl = 3600
缓存配置

PHP php.ini 示例 9

[PHP]\nmemory_limit = 256M
内存限制
upload_max_filesize = 20M
上传文件大小
post_max_size = 25M
POST 数据大小
max_execution_time = 30
最大执行时间(秒)
display_errors = On
显示错误
error_reporting = E_ALL
错误报告级别
date.timezone = Asia/Shanghai
时区设置
session.save_path = /tmp
Session 存储路径
session.gc_maxlifetime = 1440
Session 最大生存时间(秒)

Git 配置示例 7

[user]\nname = Your Name\nemail = you@example.com
用户信息
[core]\neditor = vim\nautocrlf = input
核心配置
[alias]\nco = checkout\nbr = branch\nlg = log --oneline --graph
命令别名
[remote "origin"]\nurl = https://github.com/user/repo.git
远程仓库
[diff]\ntool = vimdiff
diff 工具配置
[merge]\ntool = vimdiff\nconflictstyle = diff3
merge 工具配置
[pull]\nrebase = true
pull 时使用 rebase

Windows INI 示例 5

path = C:\\Program Files\\App
Windows 路径(反斜杠转义)
[Environment]\nPATH = %PATH%;C:\\bin
环境变量(引用系统变量)
temp = %TEMP%\\app
使用系统环境变量拼接路径
app_dir = ${APPDIR}
变量引用语法(部分解析器支持)
key = value ; trailing comment
行尾注释(部分解析器支持)

Python configparser 6

config.read("config.ini")
读取 INI 文件
config.write(open("config.ini", "w"))
写入 INI 文件
config["section"]["key"]
读取某个键的值
config["section"]["key"] = "value"
设置键值对
config["DEFAULT"]["key"]
默认值(所有节继承)
config.getint("section", "port")
按类型读取(getint/getfloat/getboolean)

解析注意事项 6

; vs #
注释符号差异:分号通用,井号看解析器
key="value" vs key = value
引号差异:有的保留引号,有的去除
[[nested]]
标准 INI 不支持嵌套节(非标准扩展)
BOM: \xEF\xBB\xBF
UTF-8 BOM 可能导致首个节解析失败
key = ; not a comment
值中的分号通常不视为注释
duplicate keys
重复键行为不明确(后者覆盖前者或报错)

💡 Tips

  • INI 语法简单,但不支持嵌套结构,复杂配置建议用 YAML 或 TOML。
  • 不同解析器对注释符号支持不同,分号(;)最通用。
  • 键值对的等号两边可以有空格,解析器会自动去除。
  • Windows 路径中的反斜杠需注意转义,建议用正斜杠或双反斜杠。
  • Python configparser 不支持默认值的变量插值,需用 ExtendedInterpolation。
  • INI 文件编码建议统一使用 UTF-8 无 BOM,避免解析首节失败。