- Как запустить скрипт ruby linux
- как установить ruby и запустить ruby-скрипт
- Блог 7even
- про ruby, rails, sinatra, git и всё на свете
- Краткое введение в Ruby, ч. 1
- Установка
- Windows
- Mac OS X
- Linux
- Методы
- String
- Fixnum
- Массивы и хэши
- Классы
- Переменные
- Блоки
- Запуск ruby-скриптов
- Заключение
- Урок 1: «Рубин нужен не только для лазера»
Как запустить скрипт ruby linux
как установить ruby и запустить ruby-скрипт
Итак, выяснилось следующее: многие люди не знают как устанавливать Ruby, точнее сказать им лень немного почитать яндекс/гугл и прочее. |
Linux
Как установить в linux’ах я рассказывать не буду, и так всем ясно что это:
для Slackware читаем файл readme в тарболе.
Windows
- Качаем вот эту штуку Ruby 1.8.5 Установщик в один клик
- Запускаем скачанный файл и в окне
отмечаем галочки как показано. И нажимаем ‘Next’ везде далее.
Все теперь интерпритатор Ruby установлен. Но мы на этом не остановимся и для полного комплекта установим make.
и если высветилось что-то подобное вышепоказанному значит пока все ништяк.
Теперь в той же консоли набираем: gem –help. И в ответ должно показатся что-то типа:
Если у вас все так и получилось значит вы молодец и у вас все сложится в жизни )).
Как запустить скрипты Ruby
Linux
В Linux’е все просто, если в начале скрипта есть строчка
то достаточно в консоли ввести
Однако не стоит забывать, чтобы у файла скрипта были права на выполнение. Если же у скрипта нет вышеуказанной строки, то запустить можно так:
Windows
Тут в принципе тоже самое:
- заходим в консоль (Пуск->Выполнить->cmd)
- командой ‘cd’ заходим в папку где лежит скрипт
- набираем ruby rubyscriptname.rb
Все эти действия можно посмотреть на видео ниже
Источник
Блог 7even
про ruby, rails, sinatra, git и всё на свете
Краткое введение в Ruby, ч. 1
Jun 28 th , 2011
Эта статья посвящается моим друзьям/знакомым PHP- (и не только) программистам, которым лень/некогда (зачеркнуть второе лишнее) познакомиться с Ruby и освоить азы этого языка.
Установка
Ruby предоставляет интерактивную консоль irb, в которой можно вводить код и сразу видеть результат его выполнения (аналогично js-консоли в firebug). irb устанавливается вместе с самим Ruby, поэтому будем ставить его.
Сразу обращу внимание — есть способ пропустить этот шаг, и перейти на tryruby, где аналогичная консоль (с некоторыми разумными ограничениями) доступна прямо в браузере. Для тех, кто не боится процесса установки (а, возможно, Ruby уже есть в вашей системе), этот раздел.
Windows
Честно говоря, ни разу не пробовал заниматься подобными извращениями, но говорят, что это работает (там в комплекте и Ruby, и рельсы, и еще докучи всякого небесполезного барахла).
Mac OS X
Начиная с 10.5 (а, возможно, и с 10.4, точно не знаю) Ruby предустановлен в системе, и достаточно просто открыть Терминал.app и набрать irb ; но там предустановлена стремительно устаревающая версия 1.8, и стоит установить последнюю самому. Самый удобный способ — это использовать RVM:
Пользователям zsh нужно заменить .bash_profile на .zshrc — хотя они и так об этом знают.
При ручной установке Ruby необходимо ставить дополнительные библиотеки вроде readline , и подключать их при компиляции интерпретатора Ruby — RVM делает это автоматически.
Linux
Ruby можно поставить из репозиториев большинства дистрибутивов, но иногда приходится подолгу ждать обновления пакета, чтобы получить свежую версию Ruby; также всегда можно собрать из исходников, но не все любят этим заниматься (особенно пользователи дистрибутивов, в которых установка пакета сводится к команде наподобие sudo apt-get install ruby ); поэтому, опять же, я предлагаю использовать RVM, описанный в предыдущем подразделе.
irb (Interactive Ruby Shell) — это консоль Ruby. Запускается, как несложно догадаться, командой
Ввод любой строки кода, которая возвращает какое-то значение, повлечет за собой вывод этого значения:
(узнав об этом, вскоре я начал использовать irb как калькулятор 🙂 так как всегда держу открытым хотя бы одно окно консоли)
Методы
В Ruby не существует жесткого разделения на числа, строки, массивы и объекты — любая переменная является ссылкой на объект. Объект, в свою очередь, всегда относится к определенному классу. А у объектов, как мы знаем из ООП, обычно есть методы.
В Ruby обращение к методу объекта осуществляется через ‘.’ (точку).
В Ruby нет такого понятия, как тип переменной; его успешно заменяет класс объекта. Например, объект “hello” будет принадлежать классу String , а объект 3.14 — классу Float . Рассмотрим самые важные классы, зачастую представляемые в других языках примитивами.
String
Строки в Ruby можно создавать несколькими способами. Самый популярный — это использование одинарных либо двойных кавычек, во втором случае происходит интерполяция переменных:
Класс String предоставляет множество полезных методов для работы со строками. Например, для разбиения строки на части по определенному разделителю можно использовать метод split :
Fixnum
Целые числа в определенном диапазоне (как правило это −2 30 … 2 30 — 1 или −2 62 … 2 62 — 1) относятся к классу Fixnum . Более крупные числа относятся к классу Bignum .
Для работы с числами доступна вся стандартная арифметика (+, -, *, /, %). Также целочисленные типы предоставляют ряд итераторов:
Массивы и хэши
В Ruby для коллекций объектов существуют объекты классов Array (массив) и Hash (хэш). Они отличаются друг от друга индексацией элементов: в массивах объекты индексируются последовательными целыми числами, а в хэшах ключом элемента может быть любой объект.
Для обхода элементов массива или хэша используются итераторы, например each :
Классы
Как я уже писал чуть выше, каждый объект относится к определенному классу. Узнать этот класс можно с помощью метода class :
Попробуем написать свой элементарный класс:
и создать объект этого класса:
Создание объекта происходит посредством вызова метода new того класса, к которому будет относиться создаваемый объект.
Основное предназначение класса — это определение поведения его объектов, то есть методов. Напишем какой-нибудь метод:
и вызовем его, предварительно создав объект:
Наш метод просто возвращает строку “hello!”, а irb выводит результат каждой возвращающей что-либо строки кода; поэтому при вызове метода мы видим возвращаемую строку.
Тут необходимо сделать небольшое отступление — Ruby позволяет открывать уже определенные классы, и определять новые методы, так же как и переопределять уже существующие. Это дает возможность применять технику, известную как monkeypatching — изменение методов встроенных (либо добавляемых какой-нибудь сторонней библиотекой) классов, чтобы получить метод, ведущий себя немного не так, как задумывалось автором, но не переписывать для этого слишком многое.
Переменные
Переменные в Ruby различаются на несколько типов по своему названию:
- $global — переменные, название которых начинается с $, являются глобальными и доступны в любой области видимости
- @@class — переменные, название которых начинается с @@, являются классовыми и доступны в контексте класса, к которому они принадлежат, а также в контексте классов-наследников
- @object — переменные, название которых начинается с @, являются переменными объекта (инстанса) и доступны в контексте этого объекта
- local — прочие переменные являются локальными, и выпадают из области видимости при первой же смене контекста (например, если локальная переменная была объявлена в теле определения метода, то вне этого определения она будет уже недоступна)
Блоки
Блок — это кусок кода, который может иметь какие-то параметры, и возвращает определенное значение. Во многом блоки похожи на методы, но они не используются независимо — блок можно только передать методу.
При вызове метода ему можно передавать аргументы, а также блок. Для этого предусмотрено два варианта синтаксиса:
Как видно из примера, результат применения обоих вариантов одинаковый; но синтаксис с использованием фигурных скобок принято применять в случаях, когда блок содержит всего одну строку кода, а синтаксис do . end — для многострочных блоков.
Код, переданный в блоке, будет выполняться в зависимости от метода определенное количество раз (итераторы), при определенных условиях (условные конструкции), и не только — блоки в Ruby находят достаточно широкое применение.
Чтобы метод выполнил код блока, служит ключевое слово yield — при выполнении метода в этом месте будет выполнен код блока:
Если у блока предполагаются параметры, их нужно передавать параметрами в yield :
Запуск ruby-скриптов
Разумеется, программирование на Ruby не ограничивается irb — можно создавать скрипты (общепринятое расширение для исходников скриптов на Ruby — .rb) и запускать из командной строки:
Заключение
Разумеется, в одной статье невозможно охватить все грани языка, но надеюсь, что смог описать основы в относительно понятном виде. В следующей части будут описаны модули, наследование классов, примеси (mixin-ы), контроль доступа к методам ( public / protected / private ), гибкие возможности списков аргументов у методов и, возможно, что-нибудь еще.
Написал 7even Jun 28 th , 2011 ruby, tutorial
Источник
Урок 1: «Рубин нужен не только для лазера»
Внимание! Уроки начинал писать еще в 2012 году, когда на RoR был хайп. Сейчас RoR не востребован от слова «совсем». Вакансий крайне мало в российском сегменте. За границей на него спрос еще остался, но он затухает. Язык довольно-таки интересный, но, спрос на него будет неуклонно падать.Так что имейте это в виду (октябрь 2019 года)
Спрос на рынке труда диктует свои правила. Не так давно Ruby on Rails стала весьма популярной у российских работодателей. А это означает, что я не мог обойти данную платформу стороной.
Естественно, что для того, чтобы создавать сайты на RoR, нужно уметь программировать на самом языке Ruby. К своему неудовольствию, я обнаружил, что литературы, посвященной этому языку крайне мало. Это и побудило меня начать цикл уроков, посвященных программированию на Ruby с последующим переходом на рельсы (on Rails).
Итак, приступим. Для начала программирования нам понадобятся интерпретатор языка Ruby. Да-да, это очередной интерпретируемый язык, чтобы вы знали. А это означает полную переносимость кода. Тем не менее, нужно сразу оговориться об особенностях этого интерпретатора. Изначально сам Ruby был заточен под .nix системы и у него было крайне много проблем в Windows, особенно при использовании onRails. Сейчас ситуацию в Windows изменили в лучшую сторону, но, тем не менее, все же советую для коммерческой разработки использовать виртуальную машину с Ubuntu или Mint, если вы сидите под виндовс. В дальнейшем, когда мы закончим основы самого языка и накачаем мышцы для перехода на onRails, то лично я уже буду отталкиваться от никсовой системы, хотя и буду показывать, как многое можно сделать в Windows. Тем не менее, имейте в виду эту особенность платформы.
К счастью, Ruby обзавелся русским комьюнити. Скачать интерпретатор языка вы сможете с https://www.ruby-lang.org/ru/downloads/. К слову сказать, раньше интерпретатор для Windows поставлялся вместе с достаточно хорошей книжкой по языку Руби. Теперь книги уже нет, но сам сайт стал гораздо удобнее и обзавелся внятной документацией и многими «плюшками». Крайне рекомендую поизучать данный сайт. Для тех же, кто сидит на маках и линуксах, там описано, как установить систему нужные гемы (пакетные библиотеки ruby). В рамках основ Ruby я на этом останавливаться не буду, так как уверен, что 90% читателей этих уроков работают на Windows.
Скачав и установив Ruby на свой компьютер, вы получите в довесок irb — интерактивный интерпретатор ruby. На самом деле, полезная штука при вводе небольших команд для проверки, как все срабатывает, но и серьезные программы также обрабатываются через него.
Запустить irb можно либо набрав одноименную команду в командой строке или же найти соответствующий ярлык в папке с программами.
Итак, запустив Interactive Ruby, мы наберем следующую команду:
puts “Привет программисту на Ruby!”
И нажмем на Enter. У вас должно получиться такое:
Знаю, что данное выражение набило оскомину, но нужно же с чего-то начинать?! Тем не менее, не стоит злоупотреблять русским текстом. Интерпретатор этого не любит и у вас будут выводиться всякие «квакозябры», если вы это не вбиваете в самом irb.
Для написания и отладки скриптов Ruby лучше использовать специализированные редакторы или IDE. Можно использовать RubyMine от JetBrains, но он платный. Подойдет для написания и SublimeText, однако он обладает вышеназванным недостатком лично я в дальнейших уроках буду использовать бесплатный редактор кода MS Visual Studio Code. Он бесплатный, кроссплатформенный и при помощи различных расширений из него можно сделать практически полноценную студию разработки своих программ на Ruby.
Скачать Visual Studio Code вы можете с https://code.visualstudio.com/. Установка простая абсолютно для всех поддерживаемых операционных систем. Добавление расширений для работы с Ruby не должно вызвать проблем и находится в соответсвующем пунке меню редактора. Для тех, кто все же не хочет тратить время на поиск всех этих пунктов, рекомендую просмотреть вводный видеоурок, где я также рассказываю, как подготовить среду для разработки своих скриптов.
Скачав и установив Visual Studio Code, теперь можно создать новый файл и вбить в нем текст:
И сохранить его с расширением .rb и названием Hello. В моем примере я поместил его в корень диска C и могу его теперь вызвать в Windows так:
ruby C:\Hello.rb
Или же можно все эти скрипты запускать в том же Visual Studio Code (если вы его настроили правильно) и RubyMine. Тут вопрос удобства.
Пока все. Мы настроили среду разработки и написали первый скрипт. Урок 2 будет посвящен уже синтаксису языка.
Вводное занятие по Ruby. Это будет самое длинное видео в этой серии уроков. Расписал полезные моменты по минутам для улучшения навигации
Дополнение от 22.04.2018
Этот цикл уроков я начал в 2012 году. Не зная, сколько просуществует блог, старался писать обобщенно по языку, ведь конструкции не будут изменяться в разных версиях языка.
К сожалению, на тот момент трафик не рос на сайте, уроки просто воровались и я их бросил в том же году. Сейчас, по прошествии шести лет хотелось бы именно дополнить этот начальный урок (не исправить, так как для Windows суть не сильно меняется).
Источник