美文网首页ruby 与 rails
《ruby 教程》 ruby命令行与函数

《ruby 教程》 ruby命令行与函数

作者: 饥人谷_若愚 | 来源:发表于2017-04-28 00:19 被阅读109次

    命令行参数

    新建文件 hello.rb

    p ARGV[0]
    p ARGV[1]
    p ARGV
    

    执行

    $ ruby hello.rb hello world
    

    输出

    "hello"
    "world"
    ["hello", "world"]
    

    读取文件

    新建文件 read.rb

    file = File.open ARGV[0]    #函数调用的()可以省略
    text = file.read  
    puts text
    file.close
    

    执行

    $ ruby read.rb text.txt
    

    逐行查找

    新建文件 search.rb

    file = File.open(ARGV[0])  # 打开文件
    patten = eval ARGV[1]      # eval 把字符串转换为正则
    results = []                         # 查找到的行放入这个数组
    text = file.read                   # 读取文件内容
    text.each_line do |line|      # 对每一行进行操作
      if(patten =~ line)              # 如果匹配上了
        results << line               # 把匹配的行放入results数组
      end
    end
    p results
    

    执行

    $ ruby search.rb read.rb /file/    # 在刚刚创建的read.rb里找包含file字符串的行
    

    输出

    ["file = File.open ARGV[0]\n", "text = file.read\n", "file.close"]
    

    定义方法

    def fn 
      puts "hello"
    end 
    fn()  # 调用
    fn    #  调用,可省略()
    
    def sum (a, b)
      return a + b
    end
    sum (1, 2)
    
    def sum_of_square (a, b)
      a *= a
      b *= b
      a + b   # 会自动 return 最后一个表达式
    end 
    sum_of_square 3, 4
    
    

    相关文章

      网友评论

        本文标题:《ruby 教程》 ruby命令行与函数

        本文链接:https://www.haomeiwen.com/subject/ghxozttx.html