Tanto Perl como Powershell permiten automatizar tareas, por ejemplo, mediante un script podemos ejecutar un proceso del sistema operativo, buscar un archivo en directorios, encender/apagar el sistema, entre otras cosas más.
Para hacer uso de Powershell debemos tener instalado el .Net framework http://www.microsoft.com/es-mx/download/details.aspx?id=17851
Abrir la terminal de comandos y teclear: powershell o bien abrirlo directamente--> Ejecutar: powershell
En Powershell los archivos tienen la extensión *.ps1, en Perl *.pl
1. Hola mundohola.ps1
# esto es un comentario
"Hola, mundo desde powershell !!"
#también se puede hacer esto
Write-Host "Hola, mundo desde powershell !!"
hola.pl
#esto es un comentario
print "Hola, mundo desde Perl !!\n";
2. Paso de parámetros desde terminal
argumentos.ps1
#la declaración de variables es muy parecida a Perl
$args
"no. de parametros: $($args.count)"
argumentos.pl
use strict;
use warnings;
my $tam=scalar(@ARGV);
print "no. de parametros: $tam\n";
3. Uso de for
for.ps1
$args
"no. de parametros: $($args.count)"
foreach($arg in $args){
write-host "$1"
}
for.pl
use strict;
use warnings;
my $tam=scalar(@ARGV);
print "no. de parametros: $tam\n";
for(@ARGV){
print "$_\n";
}
4. Introducir datos
entrada.ps1
$nombre= Read-Host "Introduce tu nombre: "
Write-Host "Hola $nombre"
entrada.pl
print "Tu nombre: ";
chomp(my $nombre=<STDIN>);
print "Hola $nombre\n";
5. Una simple función
funcion.ps1
function mensaje{
"soy un simple mensaje"
}
#invocar
mensaje()
funcion.pl
sub mensaje{
print "soy otro simple mensaje\n";
}
#invocar
mensaje();
6. Uso de if
if.ps1
$valor=18
$edad=read-host "Tu edad es "
if($edad -ge $valor){
write-host "correcto, puedes votar"
}else{
write-host "incorrecto, no puedes votar todavia"
}
if.pl
my $valor=18;
print "Tu edad: ";
chomp(my $edad=<STDIN>);
if($edad ge $valor){
print "correcto, puedes votar\n";
}else{
print "incorrecto, no puedes votar todavia\n";
}
7. Conocer la ubicación del directorio donde se encuentra el script
ubicacion.ps1
<#
esto
es un comentario
multilínea en PS
#>
$ubicacion=gl
write-host $ubicacion
ubicacion.pl
=comment
este es
un comentario
multilínea en Perl
=cut
my $dir=`cd`;
print $dir;
ACTUALIZACIÓN:
ACTUALMENTE SE PUEDE USAR POWERSHELL EN ENTORNOS LINUX & MAC OS
No hay comentarios:
Publicar un comentario