2011-04-18 82 views
9

大多數配置文件都是ini文件(格式:name = value \ n)。在這個問題上是否有任何文件或文章/指南。有沒有關於Unix配置文件的指南

或者任何人都應該保持接近這種格式的善意?

+0

有很多庫(或現有函數),您可以重複使用它們來讀取和解析這些文件。但隨意發明自己的格式或使用XML ... – Konerak 2011-04-18 11:44:45

+0

從FreeBSD手冊:http://www.freebsd.org/doc/handbook/kernelconfig-config.html和Linux內核:http://www.kernel。 org/pub/linux/libs/pam/Linux-PAM-html/sag-configuration-file.html – vpetkov 2011-04-18 12:30:29

回答

10

不幸的是,UNIX很難決定這個問題。有too many格式。使用像Gnome這樣的會話管理器,一些應用程序已經從維護配置文件移動到Gnome註冊表(gconf)中。

以下是一些一般性意見。

您提到的ini格式相當普遍。它確實有問題,你必須做一些技巧來分配值列表等,但在大多數情況下,它很好,很好的支持和廣泛可用。

UNIX中使用的大多數格式都依賴#字符作爲註釋行的其餘部分。如果你自己推出一些東西,那麼堅持這一點很好。

YAML是一種人類可讀的輕量級格式,您可以使用(許多應用程序使用它,雖然沒有我想要的那麼多)。

有一個約定,所有系統級別的配置文件保存在/etc和用戶級別的配置文件保存爲用戶主目錄(點文件)中的.開始的文件。

一些應用程序(特別是Emacs)將一個可運行的程序保存爲完整的編程語言,因爲它的配置文件。這在不受信任的環境中可能是不安全的,但在可信的環境中非常強大和有用。

對於新項目,我會在主目錄中使用ini作爲.programrc

art of unix programming中有一個有用的部分介紹了配置格式和文件,這些值可能值得你去檢查。

+2

一個很好的起點/石蕊試驗將會是http://augeas.net上已經有鏡頭的格式。/ – 2011-04-18 12:00:33

+0

與埃裏克S.雷蒙德關於rc文件鏈接下面的文章我想沒有什麼可說的。謝謝。 – vpetkov 2011-04-18 12:10:51

+2

此外,請考慮遵循目前的趨勢,在〜/ .config/appname下使用每個用戶的配置文件,而不是直接在用戶home目錄下,以幫助減少家庭目錄的混亂。例如。在我的家庭目錄@work上,我似乎有242個dotfiles/dirs .. :( – janneb 2011-04-18 12:42:33