Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- ########### ENCABEZADO ###########
- #
- # Nombre del script: ejercicio1.ps1
- # Trabajo practico: N°2
- # Ejercicio: N°3
- # Integrantes:
- #
- # Jason Leonel Linares 39.785.415
- # Agustin Franco Di Maulo 40.936.951
- # Nicolas Martin Cano 39.775.044
- # Fernando Ezequiel Saldaña 38.346.178
- # Carolina Tiziana Vitulli 93.584.701
- #
- # Correspondiente a: Entrega 1
- #
- #################################
- <#
- .SYNOPSIS
- En base a un archivo CSV con los datos de origen y destino,
- mueva archivos de un directorio a otro y registra en un log con formato CSV la hora en la que se movió cada uno de esos archivos.
- .PARAMETER entrada
- Path del archivo CSV de entrada.
- .PARAMETER salida
- Path del archivo CSV de salida (log). Incluye nombre del archivo.
- .EXAMPLE
- ejercicio3.ps1 -entrada entrada.csv -salida salida.csv
- #>
- Param (
- [Parameter(Position = 1, Mandatory = $true)]
- [String] $entrada,
- [Parameter(Position = 2, Mandatory = $true)]
- [String] $salida
- )
- if (Test-Path "$entrada") {
- $salidaPathPre = Resolve-Path -LiteralPath "$salida"
- $salidaPath = Split-Path -Path "$salidaPathPre"
- if (Test-Path $salidaPath) {
- $csvEntrada = Import-Csv -Path "$entrada"
- foreach($line in $csvEntrada)
- {
- $destino = $line.destino
- $destinoPath = Split-Path -Path $line.destino
- $origen = $line.origen
- if(!(Test-Path $destino)){
- New-Item -Path $destinoPath -ItemType Directory -Force | Out-Null
- }
- if((Test-Path $origen)){
- Move-Item $origen $destinoPath
- $var = [pscustomobject]@{
- archivo = [System.IO.Path]::GetFileName($origen)
- fecha = Get-Date -Format "dd/MM/yyyy"
- }
- $var | Export-Csv -Path "$salida" -Append
- }else{
- Write-Host "Hubo un problema al tratar de mover el archivo (" $origen ") a la carpeta destino (" $destino ")"
- }
- }
- }
- else {
- Write-Host "Error en el directorio de salida, revisar existencia y/o permisos."
- }
- }
- else {
- Write-Host "Error en el directorio de entrada, revisar existencia y/o permisos."
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement