Существует ли стандартное соглашение об именовании файлов для пар ключ-значение в имени файла?
У меня есть несколько файлов данных, которые названы в честь того, что они содержат. Например
machine-testM_pid-1234_key1-value1.log
Есть ключи и значения, разделенные - и _. Есть ли лучший синтаксис для этого? Существуют ли парсеры, которые автоматически читают такие файлы / имена файлов?
Идея заключается в том, что имена файлов являются читаемыми человеком и машиной.
3 ответа
Кажется, нет стандартного соглашения об именах файлов для значений ключа.
8 лет спустя...
Я бы посоветовал вам заглянуть в https://en.wikipedia.org/wiki/Query_string
Это некрасивые имена файлов, но вам не придется заново изобретать колесо, например, для преобразования в dict/json, поскольку существуют проверенные методы анализа строк запросов, например, в библиотеке запросов.
На https://unix.stackexchange.com/questions/44153/good-style-practices-for-separators-in-file-or-directory-names также есть связанный вопрос, который содержит некоторую полезную информацию, содержащую некоторые идеи . для лучших визуальных разделителей (
_-_
а также
___
) это может быть лучше в этом случае
самый основной типKEY=VALUE
Я знаю, что файлы с довольно строгим синтаксисом будут:
- .properties в основном для файлов конфигурации Java, они допускают комментарии
- .env в основном для файлов среды unix, systemd-service, они допускают комментарии
- .ini в основном для приложений C#, Python,..., они допускают комментарии и
[sections]
также
(хотя вы можете смешивать и по-прежнему использовать их, это всего лишь мой опыт, как разработчики называют свои вещи на основе библиотек и т. д.)
и есть еще много других с немного другим синтаксисом , например
- Файлы .json и/или синтаксис
"key":"value"
- Файлы .yaml и/или синтаксис
key: "value"
- XML- файлы и/или синтаксис
<key>value</key>
- пользовательские материалы, основанные на приложении, также могут быть ключ=значение, но это не обязательно... ищите что-то вроде .cfg , .conf , .config , .preferences , .settings ,...
надеюсь, это поможет.