def loop_eval(input)
      if (@buffer.nil? && input =~ PATTERN)
        command = input[1..-1]
        name, arguments = ShellCommands.parse(command)

        unless BLACKLIST.include?(name)
          if BUILTIN.include?(name)
            arguments ||= []

            return ShellCommands.send(name,*arguments)
          elsif EXECUTABLES[name]
            return ShellCommands.exec(name,*arguments)
          end
        end
      end

      super(input)
    end
def loop_eval(input)
      if (@buffer.nil? && input =~ PATTERN)
        command = input[1..-1]
        name, arguments = ShellCommands.parse(command)

        unless BLACKLIST.include?(name)
          if BUILTIN.include?(name)
            arguments ||= []

            return ShellCommands.send(name,*arguments)
          elsif EXECUTABLES[name]
            return ShellCommands.exec(name,*arguments)
          end
        end
      end

      super(input)
    end
Dynamically execute shell commands, instead of Ruby.

 @param [String] input
   The input from the console.