#Clase para emular algunos comandos de consola #La particularidad es que los comandos son propios de la clase #Y la misma clase reconoce si está corriendo sobre win o linux #Por tanto, usando el mismo comando, de esta consola, opera sobre win y lin #Consola multiplataforma, sintaxis propia, para codes en los que se necesita system. #Lo suyo sería ampliarla. #protos.nu@gmail.com class Console def initialize if RUBY_PLATFORM =~ /linux/ @os="linux" end if RUBY_PLATFORM =~ /win/ @os="win" end end def ver case @os when 'linux' @r = IO.popen('ls') when 'win' @r = IO.popen('dir') end return @r end def cd(dir) @r = IO.popen('cd #{dir}') end def dir case @os when 'linux' @r = IO.popen('pwd') when 'win' @r = IO.popen('cd') end end def limpiar case @os when 'linux' @r = IO.popen('clear') when 'win' @r = IO.popen('cls') end end def borrar(arc) case @os when 'linux' @r = IO.popen('rm #{arc}') when 'win' @r = IO.popen('del #{arc}') end end def mover(arc, dest) case @os when 'linux' @r = IO.popen('mv #{arc} #{dest}') when 'win' @r = IO.popen('move #{arc} #{dest}') end end def copiar(arc, dest) case @os when 'linux' @r = IO.popen('cp #{arc} #{dest}') when 'win' @r = IO.popen('copy #{arc} #{dest}') end end def creard(name) case @os when 'linux' @r = IO.popen('mkdir #{name}') when 'win' @r = IO.popen('md #{name}') end end def borrard(name) case @os when 'linux' @r = IO.popen('rm -r #{name}') when 'win' @r = IO.popen('rd #{name}') end end end consola = Console.new ls=consola.ver