Sha256: 6c70744b815a7213ee98ae0219f5ce6c32710510c13d7334e543831f625d4934
Contents?: true
Size: 1.75 KB
Versions: 1
Compression:
Stored size: 1.75 KB
Contents
# FS (FileSystem) Work with your filesystem! ## Problem This Gem shouldn't reinvent the wheel or be a replacement. But in Ruby working with the filesystem really hurts! In your toolbox are at least `File`, `Dir`, `FileUtils`, `Find`, and maybe some more. Good tools, but to complicated for most cases. It's not about piping, or copying the shell as it is. But think about a simple `ls` in the shell, than how you would do this in Ruby. Got the idea? ## Solution `FS` gathers the cluttered methods for working with files and dirs. Internally using the good old standard library, but providing simple methods in a single place. ## Examples FS.changedir('~/Projects/fs') ==> "/Users/bjuenger/Projects/fs" FS.list('.') ==> [".git", ".gitignore", ".rvmrc", "fs.gemspec", "Gemfile", "Gemfile.lock", "lib", "Rakefile", "README.mdown", "spec"] FS.makedirs('tmp/demo') FS.touch('tmp/demo/newfile.txt') FS.list('tmp/demo') ==> ["newfile.txt"] FS.remove('tmp/demo/newfile.txt') FS.list('tmp/demo') ==> [] ## Aliases Although verbose method names are good, there are some aliases for unix shell commands (unsorted). - ls => :list - mkdir => :makedir - mkdir_p => :makedirs - rmdir => :removedir - rm_r => :removedirs - cd => :changedir - pwd => :currentdir - mv => :move - cp => :copy - rm => :remove - cat => :read - ln => :link - dir? => :directory? - expand => :expand_path - [] => :join ## Todo Here is my mind … - maybe use underscores (remove_dir) - remove! to force something - maybe makedir! to mkdir -p - maybe touch! to mkdir -p && touch - use Find#find in FS#find ;) - file type / ftype - list_dirs - list_files - find_dirs - find_files - FS.link('a.txt' => 'b.txt') with a hash
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
fs-0.2.0 | README.mdown |