2
0
mirror of https://github.com/chubin/cheat.sheets synced 2024-11-03 15:40:17 +00:00
cheat.sheets/sheets/ruby
Dmitriy Non 10313bda28
add note on ruby -l switch
Quite a useful switch for one-liners
2019-10-15 09:55:32 +01:00

27 lines
967 B
Plaintext

# Ruby is a dynamic, reflective, object-oriented, general-purpose programming language
# ruby is a ruby interpreter
# invoke Ruby from the command line to run the script foo.rb
ruby foo.rb
# pass code as an argument
ruby -e 'puts "Hello world"'
# The -n switch acts as though the code you pass to Ruby was wrapped in the following:
# while gets
# # code here
# end
ruby -ne 'puts $_' file.txt
# Beware that with the -n switch $_ contains newline character in the end.
# With the addition of -l switch each line read has the newline character removed.
ls | ruby -lne 'File.rename($_, $_.upcase)'
# The -p switch acts similarly to -n, in that it loops over each of the lines in the input
# after your code has finished, it always prints the value of $_
# Example: replace e with a
echo "eats, shoots, and leaves" | ruby -pe '$_.gsub!("e", "a")'
# BEGIN block executed before the loop
echo "foo\nbar\nbaz" | ruby -ne 'BEGIN { i = 1 }; puts "#{i} #{$_}"; i += 1'