Witam, jestem całkowitym noob’em, dopiero zaczynam przygodę z Ruby, także z programowaniem.
Mam taki problem:
tworzę jakiś kod w “SciTE”, zapisuje na dysku, powiedzmy C:\abc gdzie abc to zapisany przez “SciTE” kod, w pliku (bez rozszerzenia - nie chce zapisywać z rozszerzeniem), próbuje otworzyć w IRB poleceniem: ruby abc, lub ruby c:\abc.
Co robię nie tak?
W tymże wątku będę zawierał dalsze pytania noob’a. Jeżeli było już takie pytanie, to przepraszam i skasuje wątek.
[quote=Tomek W]Witam, jestem całkowitym noob’em, dopiero zaczynam przygodę z Ruby, także z programowaniem.
Mam taki problem:
tworzę jakiś kod w “SciTE”, zapisuje na dysku, powiedzmy C:\abc gdzie abc to zapisany przez “SciTE” kod, w pliku (bez rozszerzenia - nie chce zapisywać z rozszerzeniem), próbuje otworzyć w IRB poleceniem: ruby abc, lub ruby c:\abc.
Co robię nie tak?
W tymże wątku będę zawierał dalsze pytania noob’a. Jeżeli było już takie pytanie, to przepraszam i skasuje wątek.[/quote]
Dodaj rozszerzenie .rb do pliku, np. abc.rb
A jeżeli dalej nie działa, to wklej komunikat błędu jaki Ci wyskakuje.
Ok, udało się, dzięki
Nie, jednak nie działa:
SyntaxError: compile error
(irb):1: syntax error, unexpected $undefined, expecting tSTRING_CONTENT or tSTRING_DBEG or tSTRING_DVAR or tSTRING_END
ruby c:\abc.rb
^
from (irb):1:
Dla kilku różnych fragmentów kodu zaczerpniętego z kodu, bez względu na nazwę zapisanego pliku, zawsze zwraca ten sam błąd (ten co powyżej), tylko rózni się nazwą pliku, dajmy na to: zapiszę zupełnie inny fragment kodu w pliku pod nazwą “4”, albo 1", albo “d” i zwraca identyczny błąd, z wyjątkiem linijki:
“ruby c:\1.rb
^
from (irb):1:”
albo:
“ruby c:\d.rb
^
from (irb):1:”
Przypomniało mi się BTW jak byłem w podstawówce, mieliśmy różne Commodore i Atari i kumpel zastanawiał się przez kilka godzin dlaczego po wklepaniu 20 linijek Basic’a program nie działa. Na drugi dzień powiedział mi o tym na co ja entuzjastycznie wykrzyknąłem: “A wpisałeś RUN ?!?!”. W tym momencie wiedziałem, że będzie ze mnie niezły software developer
@Tomek W: Wygląda na to, że jesteś w konsoli irb i próbujesz wpisać “ruby c:\abc.rb”
Będąc w konsoli irb nie uruchamiasz rubiego bo już w nim jesteś. Aby po prostu uruchamić program zapisany w pliku abc.rb uruchom windowsowego cms, przejdz do katalogu z programem i wpisz
ruby.exe abc.rb
Nie, otworzyłem “wiersz polecenia”, wpisałem irb, uruchomił się, i z tego momentu próbuje, i tu właśnie nie działa.
Próbowałem przejść do katalogu, próbowałem bez, z komendą, którą podałeś powyżej, też lipa, to znaczy:
"NameError: undefined local variable or method ‘abc’ for main object.
To samo jak wpiszę samo abc.rb
jak wpiszę ze ścieżką docelową, tzn: ruby.exe c:\abc.rb, albo po prostu: c:\abc.rb, to zwraca początkowy błąd.
Uruchom windowsową konsolę, nie odpalaj irb. IRB to interaktywny ruby, czyli tam już wpisujesz polecenia języka: np. “puts ‘jestem irb!’”.
W konsoli windows wpisz “ruby C:\mojplikgdzieontamjest.rb” aby uruchomić zapisany skrypt w pliku.
Ok, tym razem faktycznie działa.
Dzięki wielkie za pomoc
Ps. Jak jeszcze będę mial jakieś pytania, będę umieszczal w tym wątku, co by forum nie zaśmiecać, dobrze?
Jeśli będą powiązane. Jeśli będą dotyczyć czegoś innego niż uruchamianie skryptów (np. składni, bibliotek) to najlepszym miejscem jest oddzielny wątek.
Ja bym powiedział, że zaśmiecanie forum to właśnie pisanie 40 różnych problemów w jednym temacie. Jak później ktoś inny chce znaleźć odpowiedź na jakieś pytanie, to nie dostanie listy tematów, z których wybierze pasujące. I nie sądzę, żeby domyślił się, że pytanie o np. błąd skłądni było w temacie “Problem z otwieraniem pliku kodu”.