Gestión de carpetas compartidas script7.ps1 Muestra información de las carpetas compartidas script8.ps1 Pide nombre…
Ejercicios scripts PowerShell. Redes
Seguimos con adaptadores y gestión de red
script9.ps1 Gestión de Red
Menú de gestión de redes
1. Mostrar información simple de todos los adaptadore de red
2. Mostrar información detallada de un adaptador (pide nombre de adaptador)
3. Activar/desactivar adaptador (pide nombre)
4. Configuración IP
5. Salir
Menú de configuración IP
A) Ver configuración actual
C) Comprobar conectivad a Internet
E) Cambiar con Conf. estática (pide IP, máscara, pta. enlace y DNS)
D) Cambiar con Conf. dinámica (Habilita las opciones oportunas)
V) Volver
Por cortesía de Sergio y Diego, os muestro 2 soluciones posibles, SIN funciones y CON FUNCIONES:
SIN FUNCIONES (SERGIO)
#Menú de gestión de redes
do{
$showmenu
clear-host
Write-Host "1--- Mostrar información simple de todos los adaptadore de red"
Write-Host "2---Mostrar información detallada de un adaptador (pide nombre de adaptador)"
Write-Host "3---Activar/desactivar adaptador (pide nombre)"
Write-Host "4---Configuración IP"
Write-Host "5---Salir"
$select= Read-Host "Seleccione una opción"
if ($select -eq 1){
Get-NetAdapter
}
if ($select -eq 2){
$nombre= read-host "nombre de adaptador de red"
Get-NetAdapter -name $nombre
}
if ($select -eq 3){
$nombre2= read-host "nombre de adaptador de red"
$act_des= read-host "deseas activar(a) o descativar(d)"
if($act_des -eq "a"){
enable-NetAdapter -name $nombre2
}
else{
disable-NetAdapter -name $nombre2
}
}
if ($select -eq 4) {
#Menú de configuración IP
do {
clear-host
Write-Host "A---Ver configuración actual"
Write-Host "B---Comprobar conectivad a Internet"
Write-Host "C---Cambiar con Conf. estática (pide IP, máscara, pta. enlace y DNS)"
Write-Host "D---Cambiar con Conf. dinámica (Habilita las opciones oportunas)"
Write-Host "E---Volver"
$select1= Read-Host "Seleccione una A,B,C,D,E"
if ($select1 -eq "A")
{
gip
}
if ($select1 -eq "B")
{
Test-Connection www.google.es
}
if ($select1 -eq "C")
{
$ip= Read-Host "indica una ip"
$pe= read-host "indica una puerta de enlace"
$mask= Read-Host "indica una máscara"
$dns=read-host "indica un DNS"
Remove-NetIPAddress
New-NetIPAddress -IPAddress $ip -PrefixLength $mask -DefaultGateway $pe -ServerAddresses $dns
}
if ($select1 -eq "D")
{
#Habría que pedir nombre de interfaz y seguir apuntes PDF
}
if ($select1 -ne "E")
{
Read-Host "Pulsa una tecla para continuar"
}
} while ($select1 -ne "E")
}
if ($select -ne 5)
{
Read-Host "Pulsa una tecla para continuar"
}
} while ($select -ne 5)
CON FUNCIONES (DIEGO)
#Menú Gestión de Red
function principal{
do
{
clear-host
write-host ""
write-host ""
write-host "Menú Gestión de Red"
Write-Host "1.Mostrar información simple adaptador de red
2.Mostrar información detallada
3.Activar/Desactivar adaptador
4.Configuración IP
5.Salir"
$elegir=read-host "seleccione una opcion 1,2,3,4,5"
write-host ""
if ($elegir -eq 1)
{
Get-netadapter
Pause
write-host ""
write-host "Pulse para continuar..."
}
if ($elegir -eq 2)
{
$adap=read-host "Nombre del adaptador"
Get-netadapter -name $adap|ft
Pause
write-host ""
write-host "Pulse para continuar..."
clear-host
}
if ($elegir -eq 3)
{
acds
principal
}
if ($elegir -eq 4)
{
menuconfip
principal
}
if ($elegir -eq 5)
{
exit
}
}
while ($elige -le 5)
}
function acds {
clear-host
write-host ""
write-host "Desea activar o desactivar?"
write-host "1.Activar
2.Desactivar"
$eleg2=read-host "Seleccione una opcion 1,2"
write-host ""
if ($eleg2 -eq 1)
{
$adap=Read-Host "Nombre del adaptador"
enable-netadapter -Name $adap
}
else {
$adap=Read-Host "Nombre del adaptador"
Disable-netadapter -Name $adap
}
}
function menuconfip {
do {
clear-host
write-host ""
write-host "Menú de configuración IP"
write-host "A.Ver configuración actual
B.Comprobar conectividad a internet
C.Cambiar a conf.estática
D.Cambiar a conf.dinámica
E.Volver"
$eleg2=read-host "Seleccione una opcion A,B,C,D,E"
write-host ""
if ($eleg2 -eq "A"){
get-netIPConfiguration
Pause
write-host ""
write-host "Pulse para continuar..."
}
if ($eleg2 -eq "B"){
Test-Connection www.google.es
Pause
write-host ""
write-host "Pulse para continuar..."
}
if ($eleg2 -eq "C"){
$ip=Read-host "indique la IP"
$pe=Read-host "indique una puerta de enlace"
$masc=Read-host "indique la mascara"
$dns=Read-host "indique dns"
Remove-NetIPAddress
New-NetIPAddress -IPAddress $ip -Prefixlength $masc -DefaultGateway $pe -ServerAddresses $dns
Pause
write-host ""
write-host "Pulse para continuar..."
}
if ($eleg2 -eq "D"){
#Habría que pedir nombre de interfaz y seguir apuntes PDF
Pause
write-host ""
write-host "Pulse para continuar..."
}
}
while ($eleg2 -ne "E")
}
principal

