Comandos PowerShell para administración de Windows: procesos, servicios, usuarios y backups

Enviado por Programa Chuletas y clasificado en Informática y Telecomunicaciones

Escrito el en español con un tamaño de 11,99 KB

Comandos y ejercicios de PowerShell

1.

Pregunta: Indica el nombre que se le da al nuevo juego de comandos de la consola PowerShell.

Respuesta: cmdlet

cmdlet

2.

Pregunta: Si queremos obtener los 5 procesos que más CPU nos están consumiendo en nuestro sistema, ejecuto el comando:

Get-Process | Sort-Object CPU -Descending | Select-Object -First 5

3.

Pregunta: Si queremos ver aquellos adaptadores de red que están activos, utilizo el comando:

Get-WmiObject -Class Win32_NetworkAdapterConfiguration -Filter IPEnabled=$true

4.

Pregunta: Si queremos mostrar todos aquellos procesos cuyo nombre comience por la letra s, teclearé el comando:

Get-Service | Where-Object { $_.Name -like 's*' }

5.

Pregunta: Si queremos obtener todos los servicios del sistema que están parados, ejecutamos el comando:

Get-Service | Where-Object { $_.Status -eq 'Stopped' }

6.

Pregunta: Si queremos obtener solamente los valores de la columna Id y Name de todos los procesos que se ejecutan en Windows desde PowerShell, ejecuto el comando:

Get-Process | Select-Object Id, ProcessName

7.

Pregunta: Si queremos obtener todos los recursos compartidos de nuestro sistema en PowerShell, puedo ejecutar el comando:

Get-FileShare

8.

Pregunta: Indique cómo mostraría con el comando Get-WmiObject -Class Win32_NetworkAdapterConfiguration cómo seleccionar el adaptador de red cuyo campo Index es el 7.

Get-WmiObject -Class Win32_NetworkAdapterConfiguration -Filter 'Index=7'

9.

Pregunta: Indique qué comando teclearía si quiere obtener una lista de todas las actualizaciones de seguridad de nuestro sistema operativo Windows.

Get-HotFix | Where-Object { $_.Description -like 'Security*' }

10.

Pregunta: Indique qué comando teclearía si quiere obtener una lista de todas las actualizaciones de tipo service pack de nuestro sistema operativo Windows.

Get-HotFix | Where-Object { $_.Description -like 'Service Pack*' }

11.

Pregunta: Indique qué comando teclearía si quiere obtener solamente el campo HotFixID de todas las actualizaciones de seguridad del sistema.

Get-HotFix | Where-Object { $_.Description -like 'Security*' } | Select-Object HotFixID

12.

Pregunta: Indique cómo guardaría en una variable llamada $actualizaciones todas las actualizaciones de seguridad de nuestro sistema Windows.

$actualizaciones = Get-HotFix | Where-Object { $_.Description -like 'Security*' }

13.

Pregunta: Indique cómo, utilizando la variable del ejercicio anterior, se puede filtrar para que nos muestre la segunda de las actualizaciones de seguridad guardada en dicha variable. Deberás utilizar el concepto de array.

$actualizaciones[1]

14.

Pregunta: Indique qué comando utilizarías para comprimir la carpeta Downloads en un fichero llamado descargas.zip.

Compress-Archive -Path 'C:\Users\usuario\Downloads' -CompressionLevel Optimal -DestinationPath 'C:\Users\usuario\Desktop\descargas.zip'

15.

Pregunta: Indique qué comando utilizarías para descomprimir el fichero descargas.zip del ejercicio anterior en una carpeta del escritorio llamada Descargas.

Expand-Archive -Path 'C:\Users\usuario\Desktop\descargas.zip' -DestinationPath 'C:\Users\Usuario\Desktop\Descargas'

16.

Pregunta: Indique qué comando utilizarías para ver el contenido de la carpeta Descargas del ejercicio anterior.

ls 'C:\Users\usuario\Desktop\Descargas'

17.

Pregunta: Indique qué comando utilizarías para borrar la carpeta Descargas del ejercicio anterior.

Remove-Item 'C:\Users\usuario\Desktop\Descargas' -Recurse -Force

18.

Pregunta: Indique qué comando teclearías para ver si existe la carpeta Descargas del ejercicio anterior.

Test-Path 'C:\Users\usuario\Desktop\Descargas'

19.

Pregunta: Indica cómo crearías un punto de restauración de Windows.

Enable-ComputerRestore -Drive 'C:\'
Checkpoint-Computer -Description 'Punto de restauración creado con PowerShell'

20.

Pregunta: Indica cómo comprobarías que el punto de restauración del sistema del ejercicio anterior ya está en la lista de los puntos de restauración de Windows.

Get-ComputerRestorePoint

21.

Pregunta: Indica cómo restaurarías el punto de control de restauración que has creado dos ejercicios atrás.

Nota: Por lo general se utiliza Restore-Computer con un RestorePoint o se especifica según la ID. Aquí se muestra un ejemplo simple:

Restore-Computer -RestorePoint 1

22.

Pregunta: Indica cómo mostrarías una lista de todos los usuarios que existen en nuestro sistema Windows.

Get-LocalUser

23.

Pregunta: Indica cómo mostrarías una lista de todos los usuarios que existen en nuestro sistema Windows pero que están deshabilitados.

Get-LocalUser | Where-Object { $_.Enabled -eq $false }

24.

Pregunta: Indica qué comando teclearías para crear un usuario llamado asir.

New-LocalUser -Name 'asir' -NoPassword

25.

Pregunta: Indica qué comandos teclearías para asignar una contraseña al usuario asir.

$contraseña = Read-Host -AsSecureString -Prompt 'Introduce la contraseña'
Set-LocalUser -Name 'asir' -Password $contraseña

26.

Pregunta: Indica qué comando teclearías para ver cuándo fue el último inicio de sesión del usuario con el cual inicias sesión normalmente.

Get-LocalUser 'usuario' | Select-Object Name, LastLogon

27.

Pregunta: Indica cómo comprobarías si existe un usuario llamado asir.

Get-LocalUser -Name 'asir'

28.

Pregunta: Indica cómo deshabilitarías la cuenta del usuario asir que has creado.

Disable-LocalUser -Name 'asir'
Get-LocalUser -Name 'asir'

29.

Pregunta: Indica cómo habilitarías la cuenta del usuario asir que has creado.

Enable-LocalUser -Name 'asir'
Get-LocalUser -Name 'asir'

30.

Pregunta: Indica cómo le pondrías fecha de expiración a la cuenta del usuario asir que has creado.

Set-LocalUser -Name 'asir' -AccountExpires '2018-10-22'

31.

Pregunta: Indica cómo crearías un nuevo grupo en el sistema llamado clase.

New-LocalGroup -Name 'clase'

32.

Pregunta: Indica cómo añadirías al usuario asir al grupo clase.

Add-LocalGroupMember -Group 'clase' -Member 'asir'

33.

Pregunta: Indica cómo borrarías la cuenta del usuario asir que has creado.

Remove-LocalUser -Name 'asir'
Get-LocalUser

34.

Pregunta: Indica cómo borrarías el grupo clase que has creado.

Remove-LocalGroup -Name 'clase'
Get-LocalGroup

35.

Pregunta: Indica cómo obtendrías todos los eventos del sistema que tengan el texto "inicio de sesión" en la columna Message y que hayan ocurrido durante el mes de enero.

Get-EventLog -LogName System | Where-Object { $_.Message -like '*inicio de sesión*' -and $_.TimeWritten.Month -eq 1 }

36.

Pregunta: Exporta los resultados del ejercicio anterior a un fichero llamado inicios.html.

Get-EventLog -LogName System | Where-Object { $_.Message -like '*inicio de sesión*' -and $_.TimeWritten.Month -eq 1 } | ConvertTo-Html | Out-File 'C:\Users\usuario\Desktop\inicios.html'

37.

Pregunta: Exporta los resultados del ejercicio anterior a un fichero llamado dd-mm-aa.html donde dd es el día, mm el mes y aa el año. Estos últimos datos serán obtenidos del comando Get-Date.

$fecha = Get-Date -Format dd-MM-yy
Get-EventLog -LogName System | Where-Object { $_.Message -like '*inicio de sesión*' -and $_.TimeWritten.Month -eq 1 } | ConvertTo-Html | Out-File "C:\Users\usuario\Desktop\$fecha.html"

38.

Pregunta: Indica qué comando ejecutarías en PowerShell sobre Windows 10 para desactivar el cortafuegos de Windows.

Set-NetFirewallProfile -Profile Domain,Public,Private -Enabled False

39.

Pregunta: Indica qué comando ejecutarías en PowerShell sobre Windows 7 para desactivar el cortafuegos de Windows.

netsh advfirewall set allprofiles state off

40.

Pregunta: Indica qué comando ejecutarías en PowerShell sobre Windows 7 para comprobar si el cortafuegos del sistema está activo o no.

netsh advfirewall show currentprofile state

41.

Pregunta: Indica qué comando ejecutarías si quieres mostrar todos los volúmenes que tienes registrados en el sistema.

Get-WmiObject -Class Win32_LogicalDisk

42.

Pregunta: Indica qué declaraciones de variables son correctas en PowerShell.

Respuesta: 1, 4, 5, 6

43.

3

44.

Enunciado: Sean las líneas de código anteriores. Comente qué es lo que hacen y para qué sirve en ellas la expresión [7].

Respuesta: La expresión muestra el adaptador de red número 8; la posición se indica mediante un índice de array (por ejemplo [7] selecciona el octavo elemento del array, ya que los índices comienzan en 0).

46.

Enunciado: Mediante el cmdlet Set-ItemProperty cambia el fondo de escritorio y asigna una imagen que tengas en tu equipo.

Set-ItemProperty 'HKCU:\Control Panel\Desktop' -Name Wallpaper -Value 'C:\Users\usuario\Desktop\imagen.jpeg'

Esta operación modifica la clave del registro que controla el fondo de pantalla del usuario en HKCU (Usuario Actual).

Nota final: El contenido se ha corregido ortográfica y gramaticalmente, se han normalizado las mayúsculas/minúsculas en nombres de cmdlets y parámetros, y se han ajustado ejemplos para una sintaxis consistente en PowerShell. Se han añadido resaltados y bloques de código para facilitar la lectura y la ejecución.

Entradas relacionadas: