У меня есть несколько вопросов относительно различных rc
файлов в типичном узловом приложении, например .npmrc
, .babelrc
и т. Д.
- Что такое rc-файл, я знаю его конфигурацию времени выполнения для модуля, но что-нибудь еще?
- Должен ли файл rc соответствовать
.[module]rc
соглашению об именах или это просто рекомендуемый формат? - Какие форматы поддерживаются? Я видел форматы yaml и json, это зависит от читателя, который использует модуль?
- Как получить доступ к rc-файлу с точки зрения модуля? Делает ли его присвоение ему
[module]rc
автоматически доступным для модуля? Если да, то где это будет доступно? - Или модуль должен получить доступ к файлу так же, как любой другой файл из приложения, которое использует модуль, и ожидать, что он будет в понятном формате? (Это то, что я сейчас делаю с форматом json)
- Я также видел людей, которым требовалось
package.json
загрузить config. Что рекомендуется,package.json
или rc файл? - Также чем он отличается от файла javascript, например,
gulpfile.js
сmodule.exports
? (Я имел ввиду в смысле рекомендаций, конечно я знаю разницу и преимущества файлов js и rc)
Каждый раз, когда я ищу в Google, я оказываюсь здесь и здесь , это инструмент для чтения файла rc, но не объясняет, что это такое и как они созданы и / или подключены к модулю.
Любое понимание было бы действительно полезно. благодаря
javascript
node.js
configuration
package
runtime-configuration
Гопикришна С
источник
источник
.bashrc
и т. Д.?Ответы:
Итак, во-первых, приятно спросить.
rc
dotfiles - это файлы конфигурации, которые могут различаться по своему использованию, форматированию и общему значению. Вы можете создавать.[whatever name you like]rc
файлы, чтобы сообщить, какой пакет вы создаете (при условии, что другой пакет не ищет тот же самый). Обычно они полезны для какого-то инструмента, который воздействует на ваш исходный код и требует некоторой настройки, специфичной для вашего проекта. Насколько я понимаю, были подобные файлы, которые играли важную роль в системах UNIX в прошлом, и идея прижилась.Коротко:
.[program or binary name]rc
package.json
файлы могут содержать внешние метаданные, подходящие для конфигурации, это просто зависит от того, будет ли ваш проект ожидать.rc
файл или ожидать егоpackage.json
(или и то, и другое, как в случае с babel)Смотрите также:
В качестве невероятно простого примера:
Скажем, вы хотите прочитать этот
.foorc
файл, в котором используется кодировка JSON:{ "cool": true }
Вы можете сделать что-то вроде этого:
'use strict'; const fs = require('fs'); fs.readFile('./.foorc', 'utf8', (err, data) => { if (err) throw new Error(err); console.log(JSON.parse(data)); })
Есть гораздо более эффективные способы сделать это, но вы можете легко написать свой собственный или найти пакет, который поддерживал бы синтаксический анализ YAML, ini и т. Д., А также предоставлял бы некоторые другие полезные части API (например, rc )
источник
require('./.modulerc')
?Это не относится к Node или Babel, но
*rc
файлы обычно являются файлами конфигурации в системах Unix.Из Википедии
И Runcom
Другими словами, «rc» - это то, что прижилось еще в шестидесятых, и с тех пор довольно часто использовалось для файлов конфигурации в различных программах, включая Node, Babel и многие, многие другие.
В файлах "rc" нет ничего особенного , и они могут практически содержать любые данные, нет никаких спецификаций или других ограничений.
источник
RC относится к
https://en.wikipedia.org/wiki/Run_commands
Суффикс «rc» восходит к прародителю Unix, CTSS. В нем была функция командного сценария под названием «runcom». Ранние версии Unix использовали 'rc' в качестве имени сценария загрузки операционной системы, как дань уважения CTSS runcom.
источник
Run_command
вместоRun_commands
. @rselvagenesh предоставил правильный URL.