utils / mklnk

#!/usr/bin/env ruby
#
# name:      mklnk, make symlink for executable file
# author:    Xu Xiaodong <xxdlhy@gmail.com>
# license:   GPL
# created:   2011 Apr 27
# modified:  2011 Oct 30
#

require 'find'
require 'fileutils'

home = Dir.home
path = home + '/code'

Find.find(path) do |f|
  if File.file?(f) and File.executable?(f)
    desc = home + '/bin/' + File.basename(f)
    puts "symlinking #{f} to #{desc}"
    FileUtils.symlink(f, desc, force: true)
  end
  Find.prune if f =~ /\.vim/
end

# vim: ai:et:ts=2:sw=2:sts=2:tw=78:ft=ruby
Tip: Filter by directory path e.g. /media app.js to search for public/media/app.js.
Tip: Use camelCasing e.g. ProjME to search for ProjectModifiedEvent.java.
Tip: Filter by extension type e.g. /repo .js to search for all .js files in the /repo directory.
Tip: Separate your search with spaces e.g. /ssh pom.xml to search for src/ssh/pom.xml.
Tip: Use ↑ and ↓ arrow keys to navigate and return to view the file.
Tip: You can also navigate files with Ctrl+j (next) and Ctrl+k (previous) and view the file with Ctrl+o.
Tip: You can also navigate files with Alt+j (next) and Alt+k (previous) and view the file with Alt+o.