Trabajando con Archivos y Directorios - PowerShell
Ya sabemos navegar por el sistema y gestionar usuarios 👤 y grupos 👥 en PowerShell. Ahora veremos cómo crear, modificar, mover y borrar archivos/carpetas, además de una breve intro a permisos NTFS.
🛠️ Cmdlets comunes (Archivos y Carpetas)
| Comando | Alias | 📖 Descripción |
|---|---|---|
Get-Item |
gi |
🔎 Obtiene un objeto (archivo, carpeta, registro, etc.) |
Get-ChildItem |
ls, dir, gci |
📂 Lista contenido de carpetas o registro |
New-Item |
md, mkdir, ni |
🆕 Crea archivos, carpetas, symlinks, entradas de registro |
Set-Item |
si |
✏️ Modifica propiedades de un objeto |
Copy-Item |
copy, cp, ci |
📑 Copia un objeto |
Rename-Item |
ren, rni |
🏷️ Cambia nombre de un objeto |
Remove-Item |
rm, del, rmdir |
❌ Elimina un objeto |
Get-Content |
cat, type |
📜 Muestra contenido de un archivo |
Add-Content |
ac |
➕ Agrega contenido a un archivo |
Set-Content |
sc |
🔄 Sobrescribe el contenido |
Clear-Content |
clc |
🧹 Borra contenido (archivo queda vacío) |
Compare-Object |
diff, compare |
⚖️ Compara objetos (incluye contenido) |
📂 Crear directorios
Ejemplo → Estructura solicitada por Mr. Tanaka para SOPs:
cd C:\Users\MTanaka\Documents
New-Item -Name "SOPs" -Type Directory
cd SOPs
mkdir "Physical Sec"
mkdir "Cyber Sec"
mkdir "Training"
Get-ChildItem
📁 Estructura resultante:
SOPs
├── Physical Sec
├── Cyber Sec
└── Training
📝 Crear archivos
Archivos solicitados:
-
SOPs > ReadMe.md -
Physical Sec > Physical-Sec-draft.md -
Cyber Sec > Cyber-Sec-draft.md -
Training > Employee-Training-draft.md
Ejemplo:
New-Item "ReadMe.md" -ItemType File
New-Item "Physical-Sec-draft.md" -ItemType File
New-Item "Cyber-Sec-draft.md" -ItemType File
New-Item "Employee-Training-draft.md" -ItemType File
➕ Agregar contenido
Ejemplo para ReadMe.md:
Add-Content .\ReadMe.md "Title: Insert Document Title Here
Date: x/x/202x
Author: MTanaka
Version: 0.1 (Draft)"
cat .\ReadMe.md
🏷️ Renombrar archivos
Ejemplo: cambiar Cyber-Sec-draft.md → Infosec-SOP-draft.md:
Rename-Item .\Cyber-Sec-draft.md -NewName Infosec-SOP-draft.md
📂 Resultado:
Cyber Sec └── Infosec-SOP-draft.md
🔄 Renombrar en masa
Cambiar todos los .txt en el Escritorio a .md:
Get-ChildItem -Path *.txt | Rename-Item -NewName {$_.Name -replace ".txt",".md"}
🔐 Permisos en Archivos y Directorios
Los permisos NTFS determinan quién puede hacer qué en un archivo o carpeta.
Tipos principales:
-
🔑 Full Control → Control total (incluye modificar permisos y tomar propiedad).
-
✏️ Modify → Leer, escribir y borrar.
-
📂 List Folder Contents → Ver carpetas y ejecutar archivos.
-
▶️ Read & Execute → Ver contenido y ejecutar programas/scripts.
-
📝 Write → Crear archivos/carpetas y añadir contenido.
-
👀 Read → Ver archivos y carpetas.
-
🚪 Traverse Folder → Permite acceder a subcarpetas aunque no se tenga permiso en la carpeta raíz.
📌 Herencia: los permisos de una carpeta padre se aplican a subcarpetas y archivos (se puede desactivar para granularidad).