Module: Hackmac::Utils

Includes:
FileUtils
Defined in:
lib/hackmac/utils.rb

Instance Method Summary collapse

Instance Method Details

#ask(prompt) ⇒ Object



31
32
33
34
# File 'lib/hackmac/utils.rb', line 31

def ask(prompt)
  print prompt.bold.yellow
  gets =~ /\Ay/i
end

#x(cmd, verbose: true) ⇒ Object



14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
# File 'lib/hackmac/utils.rb', line 14

def x(cmd, verbose: true)
  prompt = cmd =~ /\A\s*sudo/ ? ?# : ?$
  print "#{prompt} #{cmd}".color(27)
  puts verbose ? "" : " >/dev/null".yellow
  output = `#{cmd} 2>&1`
  if $?.success?
    puts "✅ Command succeded!".green
  else
    puts "⚠️  Command #{cmd.inspect} failed with exit status #{$?.exitstatus}".on_red.white
    exit $?.exitstatus
  end
  if verbose
    puts output.italic
  end
  output
end