Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with
or
.
Download ZIP
Extra methods (power tools) for the File class for Ruby
Ruby

Fetching latest commit…

Cannot retrieve the latest commit at this time

Failed to load latest commit information.
lib Explicitly open file in binary mode in the tail method.
test
.gemtest Simplified windows platform detection, fixed on test, and added a .ge…
CHANGES
Gemfile Added Gemfile.
MANIFEST Removed test_middle.rb.
README
Rakefile Update gem:install task for JRuby.
ptools.gemspec

README

== Description
  The ptools (power tools) library is an additional set of commands for the
  File class based on Unix command line tools.
   
== Prerequisites
  On MS Windows you will need the win32-file gem.

== Installation
  gem install ptools

== Synopsis
  require "ptools"

  File.which("ruby")         # '/usr/local/bin/ruby'
  File.whereis("ruby")       # ['/usr/local/bin/ruby','/opt/bin/ruby']

  File.head("myfile")        # Returns first 10 lines of 'myfile'
  File.tail("myfile",3)      # Returns last 3 lines of 'myfile'
  File.wc("myfile",'words')  # Returns the number of words in 'myfile'

  File.touch("newfile")      # "newfile" now exists
  File.null                  # '/dev/null' on Unix, 'NUL' on Windows
  File.binary?('some_file')  # true or false
  File.sparse?('some_file')  # true or false

  # Creates a copy of 'myfile' called 'newfile', in DOS format
  File.nl_convert("myfile", "newfile", "dos")
   
== Known Bugs
  The File.which and File.whereis methods may fail when using JRuby on Windows.
  See https://github.com/jruby/jruby/issues/2291 for details.

  Please report any other issues on the github project page.

  http://www.github.com/djberg96/ptools

== Acknowledgements
  The File.which method was originally adopted from the FileWhich code posted
  by Michael Granger on the now defunct rubygarden.org website. That code was
  later replaced by a version based on the ruby-which library.

  The File.nl_convert method is based on the nlcvt program found at
  http://www.perl.com/language/ppt/src/nlcvt/nlcvt, written by Tom Christiansen.
    
  The binary?() method was based almost entirely on a blog post by Ryan
  Davis (who, in turn, based his code on Perl's -B switch).

  Thanks go to Matt Hoyle for help with the File.tail method.

== Future Plans
  Add whatever other tools people think might be useful.
   
== License
  Artistic 2.0
    
== Copyright
  (C) 2003-2014 Daniel J. Berger
  All Rights Reserved.
    
== Warranty
  This package is provided "as is" and without any express or
  implied warranties, including, without limitation, the implied
  warranties of merchantability and fitness for a particular purpose.

== Author
  Daniel J. Berger
Something went wrong with that request. Please try again.