如何逐行拆分字符串

时间:2014-12-11 15:45:40

标签: ruby puppet

我有一个包含

的文本文件
1.6.0_43/opt/oracle/agent12c/core/12.1.0.4.0/jdk/bin/java
1.6.0_43/opt/oracle/agent12c/core/12.1.0.4.0/jdk/jre/bin/java
1.5.0/opt/itm/v6.2.2/JRE/lx8266/bin/java
1.7.0_72/u01/java/jdk1.7.0_72/jre/bin/java
1.7.0_72/u01/java/jdk1.7.0_72/bin/java

我试图逐行阅读每一行并逐行获得结果这是我的红宝石代码:

logfile = "/home/weblogic/javacheck.txt"
java_count = 0
log = Facter::Util::FileRead.read(logfile)
unless log.nil?
    log.each_line do |line|
    if line.include?('/java')
     java_count += 1
   val = "#{line}"

但输出是:

"1.6.0_43/opt/oracle/agent12c/core/12.1.0.4.0/jdk/bin/java\n1.6.0_43/opt/oracle/agent12c/core/12.1.0.4.0/jdk/jre/bin/java\n1.5.0/opt/itm/v6.2.2/JRE/lx8266/bin/java\n1.7.0_72/u01/java/jdk1.7.0_72/jre/bin/java\n1.7.0_72/u01/java/jdk1.7.0_72/bin/java\n1.7.0_65/u01/java/jdk1.7.0_65/jre/bin/java\n1.7.0_65/u01/java/jdk1.7.0_65/bin/java\n

如何逐行转换此字符串?

1 个答案:

答案 0 :(得分:0)

这是修正码。

#!/usr/bin/env ruby

logfile = "/home/weblogic/javacheck.txt"
java_count = 0
log = File.open(logfile,"r")
unless log.nil?
    log.each_line do |line|
       if line.include?('/java')
          puts "#{line}"
          java_count += 1
       end
    end
end

puts "#{java_count}"
相关问题