lunes, 10 de diciembre de 2012

Agregar argumentos en linea de comandos a script bash

No se si me explique bien ya que ni yo me entiendo :P

Lo que pasa es esto:

Existen script's que usan esta sintaxis para ejecutar(los normales)

bash script.sh

o

chmod +x scritp.sh

./script.sh

Y lo que vamos a aprender es a hacer esto:

./script argumento

Esto mas que nada se los he mostrado en perl con el uso de $ARGV :


#!/usr/bin/env perl

use strict;
use warnings;
use feature ':5.14';
use Gtk3 -init;
use Glib qw/TRUE FALSE/;

if($ARGV[0]) {

my $foto = $ARGV[0];
my $ventana = Gtk3::Window->new('toplevel');
        $ventana->set_title("$foto");
        $ventana->set_position("mouse");
        $ventana->set_default_size(400, 100);
        $ventana->set_border_width(5);
        $ventana->signal_connect (delete_event => sub { Gtk3->main_quit });

my $imagen = Gtk3::Image->new_from_file ("$foto");

my $hbox = Gtk3::Box->new("vertical", 0);
        $hbox->pack_start($imagen, FALSE, FALSE, 0);

$ventana->add($hbox);

$ventana->show_all;

Gtk3->main;
} else {
        print "\n[+] Sintax : $0 <imagen>\n";
}


También muy bueno para "fabricar" exploits o para Hola Mundo:

Y como hacemos esto en bash, shell scripting ?

Fácil,solo usamos la variable especial de numero :

$1,$2,$etc
Aquí un ejemplo claro(creo)




Esto no es muy usado en scripts bash,por lo menos no tanto como en Perl,pero les puede servir de mucho ya que si nos ponemos a pensar lo podemos usar de muchas maneras para crear grandes scripts desde linea de comandos.

Si tienen dudas pueden comentar :D

No hay comentarios.:

Publicar un comentario

Los comentarios serán revisados antes de ser publicados.