Implementación de Cmdlets Esenciales de PowerShell para la Administración de Sistemas

Enviado por Chuletator online y clasificado en Informática y Telecomunicaciones

Escrito el en español con un tamaño de 7,22 KB

Examen Práctico de PowerShell (Parte I)

  1. Listado de Ficheros y Subcarpetas (Filtrado por Año)

    Listar los nombres y tamaños de los ficheros, incluidos los ocultos y entrando en las subcarpetas.

    Get-ChildItem -File -Force -recurse | Where-Object {$_.CreationTime.Year -LIKE '2024'}
  2. Listado de Directorios del Sistema

    Listar nombres y fecha de creación de los directorios de Windows del sistema y de solo lectura.

    Get-ChildItem C:\Windows -System -Directory -ReadOnly | SelectObject name, CreationTime 2>$null
  3. Mostrar Nombre del Equipo

    Emitir el texto: “Este PC se llama xxxx” –donde xxxx es el nombre del equipo.

    Write-Host “Este pc se llama $Env:COMPUTERNAME”
  4. Filtrado de Usuarios Locales por Inicial

    Listar todos los usuarios locales cuyo nombre comience por a, c, d o r (sin distinguir mayúsculas o minúsculas).

    Get-LocalUser | Where-Object {$_. Name -clike ‘[acdr]*’}
  5. Creación de Alias

    Crear un apodo al comando Get-Content que se llame mirar.

    New-Alias mirar Get-Content
  6. Identificación del Fichero Más Grande

    Mostrar el nombre y el tamaño del fichero más grande.

    Get-ChildItem -File | Sort Length | Select-Object name, length -Last 1
  7. Búsqueda de Contenido Sensible a Mayúsculas

    Buscar todas las líneas del fichero nombres.txt que comiencen con H (solo mayúsculas).

    Get-Content .\nombres.txt | Where-Object {$_ -clike ‘H*’}
  8. Conteo de Ficheros Ocultos Modificados

    Contar cuántos ficheros ocultos fueron modificados por última vez en 2019.

    (Get-ChildItem -File -Hidden | Where-Object {$_.LastWriteTime -EQ ‘/2024’}).count

    Nota: La pregunta solicita el año 2019, pero el comando filtra por '/2024'.

  9. Formato y Unicidad de Contenido

    Mostrar el fichero nombres.txt, sin filas repetidas y en mayúsculas.

    (Get-Content .\nombres.txt | gu).ToUpper()
  10. Listado de Cuentas Habilitadas

    Listar todas las cuentas habilitadas.

    Get-LocalUser | Where-Object {$_.enabled -Like $true}
  11. Deshabilitar Cuenta de Usuario

    Deshabilitar la cuenta del usuario r.navarro.

    Disable-LocalUser -name r.navarro
  12. Listado de Miembros de Grupo

    Listar todos los miembros del grupo g-profes.

    Get-LocalGroupMember -group g-profes
  13. Eliminación de Grupo Local

    Eliminar el grupo g-tutores.

    Remove-Localgroup g-tutores
  14. Eliminación de Miembro de Grupo

    Quitar al usuario a.taboada del grupo g-profes.

    Remove-LocalGroupMember -group g-profes -member a.taboada
  15. Detención de Proceso por ID

    El ID 8765 corresponde a un proceso que se está ejecutando, deténgalo.

    Stop-Process -Id 8765
  16. Identificación de Usuarios con Procesos

    Listar la identificación de todos los usuarios que lanzaron procesos.

    Query session
  17. Listado de Procesos por Sesión

    Listar los procesos completos del usuario 1.

    Get-process | Where-Object {$_.SI -eq 1}
  18. Apertura de URL

    Abrir la URL www.xunta.gal, mediante comandos utilizando iexplore que está en la carpeta actual.

    Start-process iexplore -ArgumentList “www.xunta.gal
  19. Alta Masiva de Cuentas (Provisionamiento)

    Dar el alta masiva de cuentas utilizando el fichero altas.csv (ver el último folio), que cuenta con más de 100 cuentas. Para ello, se debe tener en cuenta que:

    New-LocalGroup g-alu
    New-LocalGroup g-profe
    $Usuarios = Import-Csv .\usuarios.csv
    $contra = ConvertTo-SecureString “bcd*999” -AsPlainText -Force
    foreach ($i in $Usuarios){
        New-LocalUser -name $i.conta -FullName $i.nome -password $contra -Description $i.descripcion -AccountNeverExpires -PasswordNeverExpires
        Add-LocalGroupMember -Group $i.grupo -Member $i.conta
    }

    Corrección: Se ha ajustado NewLocalUser a New-LocalUser para la sintaxis correcta del cmdlet.

Examen Práctico de PowerShell (Parte II)

  1. Encontrar Archivos por Fecha de Creación

    Encontrar archivos creados en febrero de 2024.

    Get-childItem -File -Force -recurse | Where-Object {$_.CreationTime.Year -EQ 2024} | Where-Object {$_.CreationTime.month -EQ 2} | Select-Object name, length
  2. Listar Directorios Específicos

    Listar directorios de solo lectura y sistema en C:\Windows y la fecha de creación.

    Get-ChildItem C:\Windows -Directory -ReadOnly -System 2>Out-Null | Select-Object name, CreationTime
  3. Mostrar Nombre de Cuenta Actual

    Mostrar el nombre de la cuenta de usuario actual.

    Write-Host "Mi nombre de cuenta es $Env:USERNAME"
  4. Obtener Usuarios Locales por Inicial

    Obtener usuarios locales cuyos nombres comienzan con 'a', 'c', 'd' o 'r'.

    Get-LocalUser | Where-Object Name -like '[acdr]*'
  5. Creación de Alias

    Crear un alias mirar para el cmdlet Get-Content.

    New-Alias mirar Get-Content
  6. Mostrar Archivo Más Grande

    Mostrar el archivo más grande en el directorio actual.

    Get-ChildItem -File | sort Length | Select-Object name, length -Last 1
  7. Añadir Contenido Multilínea

    Añadir una lista de impuestos al archivo impuestos.txt.

    Add-content .\impuestos.txt -value "IREPF`nPatrimonio`nIVA`nSucesiones"
  8. Filtrado de Contenido por Patrón

    Mostrar el contenido del archivo nombres.txt que comienza por un punto.

    Get-Content .\nombres.txt | Where-Object {$_ -like '.*'}
  9. Conteo de Archivos Ocultos por Año

    Contar los archivos ocultos creados en 2023.

    (Get-ChildItem -File -Hidden | Where-Object {$_.CreationTime.YEAR -EQ 2023}).count
  10. Procesamiento de Texto Completo

    Leer, ordenar, eliminar duplicados y convertir a mayúsculas el contenido de citas.txt.

    (Get-Content .\citas.txt | sort | Get-Unique).ToUpper()

Entradas relacionadas: