Jak wspominają inni, chcesz mieć shebang (#!
) wiersz na początku i zmienić uprawnienia do pliku wykonywalnego.
Polecam używanie #!/usr/bin/env ruby
zamiast ścieżki bezpośrednio do Ruby, ponieważ sprawi, że twój skrypt będzie bardziej przenośny dla systemów, które mogą mieć Ruby zainstalowane w różnych katalogach; env
przeszuka Twoją ścieżkę wyszukiwania, a więc znajdzie tę samą Ruby, którą wykonasz, jeśli uruchomisz ruby
w linii poleceń.Oczywiście, będzie to mieć problemy, jeśli env
jest w innym miejscu, ale jest znacznie bardziej powszechne dla env
być na /usr/bin/env
niż Ruby być na /usr/bin/ruby
(może to być w /usr/local/bin/ruby
, /opt/bin/ruby
, /opt/local/bin/ruby
itp)
#!/usr/bin/env ruby
puts "Hello!"
I uczynić go wykonywalnym:
chmod +x file.rb
+1 za upewnienie się, że linia Shebang użyje dowolnego elementu Ruby na twojej ścieżce. Podczas aktualizacji czasami umieszcza nową wersję w zupełnie innym miejscu niż bieżąca instalacja. –
Tak, dlatego to opublikowałem; na pytanie odpowiedziało już kilka osób, ale czułem, że ważne jest, aby wspomnieć o/usr/bin/env z tego powodu. –