diff options
| author | Martin Afanasjew | 2015-12-08 08:40:44 +0100 | 
|---|---|---|
| committer | Martin Afanasjew | 2016-04-06 10:31:54 +0200 | 
| commit | b50e950f0ea2a5fdfc8d312d1a6eb4f4e6240fa0 (patch) | |
| tree | 512e47872cb991562f6054180449ec4e01ea8e39 /Library/Homebrew/cmd/unlinkapps.rb | |
| parent | dcf406f1e42ac15718e2dcbee98fcb7e22f4f27b (diff) | |
| download | brew-b50e950f0ea2a5fdfc8d312d1a6eb4f4e6240fa0.tar.bz2 | |
unlinkapps: add --dry-run option
Add `--dry-run` option as is customary for destructive commands. Update
`bash` completion and man page accordingly. Also correct and update
documentation for both `brew linkapps` and `brew unlinkapps` in more
general terms.
Diffstat (limited to 'Library/Homebrew/cmd/unlinkapps.rb')
| -rw-r--r-- | Library/Homebrew/cmd/unlinkapps.rb | 15 | 
1 files changed, 11 insertions, 4 deletions
diff --git a/Library/Homebrew/cmd/unlinkapps.rb b/Library/Homebrew/cmd/unlinkapps.rb index 86a816050..68ee9d94e 100644 --- a/Library/Homebrew/cmd/unlinkapps.rb +++ b/Library/Homebrew/cmd/unlinkapps.rb @@ -4,13 +4,14 @@ module Homebrew    def unlinkapps      target_dir = linkapps_target(:local => ARGV.include?("--local")) -    unlinkapps_from_dir(target_dir) +    unlinkapps_from_dir(target_dir, :dry_run => ARGV.dry_run?)    end    private -  def unlinkapps_from_dir(target_dir) +  def unlinkapps_from_dir(target_dir, opts = {})      return unless target_dir.directory? +    dry_run = opts.fetch(:dry_run, false)      apps = Pathname.glob("#{target_dir}/*.app").select do |app|        unlinkapps_unlink?(app) @@ -20,10 +21,16 @@ module Homebrew      apps.each do |app|        app.extend(ObserverPathnameExtension) -      puts "Unlinking: #{app}" -      app.unlink +      if dry_run +        puts "Would unlink: #{app}" +      else +        puts "Unlinking: #{app}" +        app.unlink +      end      end +    return if dry_run +      if ObserverPathnameExtension.total.zero?        puts "No apps unlinked from #{target_dir}" if ARGV.verbose?      else  | 
