Что такое формат файла RB?
.rb файлы связаны с языком программирования Ruby. Файлы с расширением .rb содержат исходный код, написанный на Ruby - интерпретируемом объектно-ориентированном скриптовом языке, созданном Юкихиро «Матцем» Матсумото. .rb файлы можно редактировать в любом текстовом редакторе. Чтобы запустить .rb программы, необходимо установить среду Ruby; скрипты обычно выполняются с помощью команды ruby filename.rb.
Ruby превратился в очень популярный язык программирования с богатым экосистемой и сильной поддержкой сообщества. Его главные особенности - простота, выразительный синтаксис и кроссплатформенная поддержка на Windows, macOS и Linux. Ruby доступен под открытой лицензией (Ruby License и BSD 2-Clause) - это не лицензия copyleft. Ruby consistently ranked among the widely used programming languages worldwide and is frequently recommended as a first programming language for beginners.
.rb - это каноническая единица источника для автономных скриптов, веб-приложений Ruby on Rails и библиотек, распространяемых в виде пакетов .gem. Связанные форматы, использующие синтаксис Ruby, включают .erb встроенные шаблонные файлы и .rake сценарии сборки.
Безопасность и защита
РИСК: MEDIUMФайл .rb - это исходный код: открытие его в текстовом редакторе или просмотрщике полностью безопасно. Риск заключается в ЗАПУСКЕ - команда "ruby file.rb" выполняет всё, что содержит скрипт, включая удаление файлов, сетевые вызовы или установку программного обеспечения. Никогда не запускайте скрипт Ruby из ненадежного источника, не прочитав его сначала. Будьте осторожны со скриптами, которые выполняют внешние команды (system/backticks/exec), загружают код во время выполнения или требуют неизвестные gems. Чтение обычного текста перед выполнением - безопасный подход.
Детали формата
в двух словахПрограммы, открывающие файлы RB
Технические подробности
глубокая спецификация| MIME-тип | application/x-ruby; также зарегистрирован как text/x-ruby и text/x-ruby-script |
| Кодировка файла | UTF-8 обычный текст (по умолчанию с Ruby 2.0; более ранние версии требовали `# encoding: utf-8` на строке 1 или 2 для исходного кода не ASCII) |
| Магические байты / сигнатура | Нет - обычный текст без фиксированной сигнатуры байтов; исполняемые скрипты обычно начинаются со строки shebang (`#!/usr/bin/env ruby`) |
| Команда интерпретатора | `ruby filename.rb` в командной строке; пользователи Windows обычно вызывают `ruby.exe` через RubyInstaller |
| Прагма frozen-string | `# frozen_string_literal: true` на строке 1 делает все строковые литералы неизменяемыми во время выполнения, что улучшает производительность (доступно с Ruby 2.3) |
| Версионирование синтаксиса | Нет поля уровня файла для версии; совместимость синтаксиса регулируется версией интерпретатора (1.8, 1.9, 2.x, 3.x) |
| Объявление кодировки | Необязательный магический комментарий `# encoding: <name>` (или `# coding: <name>`) на строке 1 или 2; обязателен для исходного кода не ASCII на Ruby < 2.0 |
| Типичный размер файла | 1 КБ - 100 КБ; большинство файлов приложений попадают в диапазон 2-30 КБ |
| Внутренняя структура | Последовательные операторы Ruby - вызовы require/load, определения классов и модулей, тела методов (def), выражения; выполняются интерпретатором сверху вниз |
| Связанные расширения | `.rbw` (Windows без консоли), `.gemspec`, `.rake`, `.ru` (конфигурация Rack), `.erb` (встроенный шаблон Ruby) |
| Поддержка платформ | Кроссплатформенная: Windows, macOS, Linux, BSD и любая ОС с интерпретатором Ruby (MRI/CRuby, JRuby, TruffleRuby) |
| Основные сценарии использования | Автономные скрипты автоматизации, контроллеры и модели Ruby on Rails, исходный код библиотек RubyGems, Rakefiles (задачи сборки), Vagrantfiles и формулы Homebrew |
| Выпущен | 1995 (Ruby 0.95 public release; Ruby 1.0 in December 1996) |
| Последняя версия | Tracks the Ruby language; Ruby 3.4 (December 2024). Source files are version-agnostic text. |
| Открыть стандартное | Да · без роялти |
| Спецификация | www.ruby-lang.org |
Конвертации RB
Вопросы и ответы сообщества
спрошено пользователямиВопросов пока нет - станьте первым, кто спросит о файлах RB.