2011-04-18 30 views
9

Çoğu yapılandırma dosyaları ini dosyalarıdır (format: name = value \ n). Bu konuda herhangi bir belge veya makale/kılavuz var mı?Unix yapılandırma dosyaları için bir yönerge var

Ya da iyi niyetle bu formata yakın kalması gereken biri var mı?

+0

Bu dosyaları okumak ve ayrıştırmak için yeniden kullanabileceğiniz birçok kitaplık (veya mevcut işlev) vardır. Ama kendi formatını icat etmek veya XML kullanmak için çekinmeyin ... – Konerak

+0

FreeBSD El Kitabı'ndan: http://www.freebsd.org/doc/handbook/kernelconfig-config.html Ve Linux Çekirdeği: http: //www.kernel. org/pub/linux/libs/pam/Linux-PAM-html/sag-config-file.html – vpetkov

cevap

10

Ne yazık ki, UNIX bu konuda pek karar verilmemiştir. too many biçimleri vardır. Gnome gibi oturum yöneticileriyle, bazı uygulamalar yapılandırma dosyalarını korumaktan Gnome kayıt defterinde (gconf) bir şeyler tutmaya geçtiler.

Bazı genel gözlemler aşağıda verilmiştir.

Aldığınız tüm ini biçimleri oldukça yaygındır. Değerler listesi vb. Atamak için bazı hileler yapmak zorunda olmanız sorunu var ama çoğu durum için iyi, iyi desteklenmiş ve yaygın olarak kullanılabilir.

UNIX'de kullanılan çoğu biçim, satırın geri kalanını yorumlamak üzere # karakterine dayanır. Eğer kendi başına bir şeyler yuvarlıyorsan, buna bağlı kalmak iyi olur.

YAML kullanabileceğiniz, kullanıcı tarafından okunabilen bir hafif biçimdir (ve çoğu uygulama bunu istediğim kadar kullanmaz).

Tüm sistem düzeyi yapılandırma dosyalarının /etc'da tutulduğu ve kullanıcı düzeyinde olanların, kullanıcı giriş dizininde (nokta dosyaları) . ile başlayan dosya olarak tutulduğu bir kural var. Bazı uygulamalar (özellikle Emacs), çalıştırılabilir bir programı, tam bir programlama dilinde yapılandırma dosyası olarak tutar. Bu güvenilmeyen bir ortamda güvensiz olabilir, ancak güvenilir bir şekilde çok güçlü ve yararlı olabilir.

Yeni bir proje için, ini ile ev dizininde .programrc olarak giderdim.

art of unix programming numaralı belgede, kontrol etmek için zaman ayırmaya değer olabilecek yapılandırma biçimleri ve dosyaları hakkında yararlı bir bölüm bulunmaktadır.

+2

http://augeas.net adresinde zaten bir merceği olan formatları görmek için iyi bir başlangıç ​​noktası/turnusol testi/ –

+0

Eric S. Raymond'un aklına bağlanan rc dosyaları ile ilgili makalelerinde akılda tutulması gereken bir şey yok. Teşekkürler. – vpetkov

+2

Ayrıca, kullanıcı ana dizinin altından doğrudan kullanıcı başına yapılandırma dosyası/dosyalarının// .config/appname altında bulunmasına ilişkin mevcut eğilimi takip etmeyi düşünün. Örneğin. benim ev dir @work üzerinde 242 dotfiles/dirs var gibi görünüyor .. :( – janneb