ruby 的 puts 或 print 可以像 bash 和 printf+tr 一样绘制水平线吗?
printf '%20s\n' | tr ' ' -
这将绘制:
--------------------
我使用快速puts "*"*80
进行调试。我确信有更好的方法。
对于花哨的线条:
p 'MY_LINE'.center(80,'_-')
#=> "_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-MY_LINE_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_"
您还可以拥有以下内容:
puts "".center(20, "-")
irb(main):005:0> puts "".center(20, '-')
=> "--------------------"
如果您想添加其他信息,这可能会更灵活:
irb(main):007:0> puts "end of task".center(20, "-")
----end of task-----
=> nil
您也可以使用String#ljust
或String#rjust
。
puts ''.rjust(20,"-")
# >> --------------------
puts ''.ljust(20,"-")
# >> --------------------