ruby 重新实现的unix树

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了ruby 重新实现的unix树相关的知识,希望对你有一定的参考价值。

#!/usr/bin/env ruby

def tree entry=Dir.pwd, indent=0
  entries = Dir.entries(entry)[2..-1]
  entries.each do |item|

    printable_item = entries.last != item ? 
      "├── #{File.basename(item)}" :
      "└── #{File.basename(item)}"

    puts "#{'│   ' * indent}#{printable_item}"
    tree("#{entry}/#{item}", indent + 1) if File.directory?("#{entry}/#{item}")
  end
end

ARGV.empty? ? tree : tree(ARGV.first)
#!/usr/bin/env ruby

# without the glyphs, if you prefer
def list entry=Dir.pwd
  Dir.entries(entry)[2..-1].each do |item|
    puts File.basename(item)
    list("#{entry}/#{item}") if File.directory?("#{entry}/#{item}")
  end
end

ARGV.empty? ? list : list(ARGV.first)

以上是关于ruby 重新实现的unix树的主要内容,如果未能解决你的问题,请参考以下文章

ruby 在Ruby中尝试使用分叉和unix套接字

ruby Ruby unix socket服务器 - 客户端接收 - 响应

Ruby:将unix时间戳转换为日期[重复]

ruby RubyでWindowsとUNIXの标准出力とエラー出力を抑止する

Linux重新学习

ruby 我的第一个简单的IPC解决方案,通过unix socket