DEV Community

Cover image for Utilizar 'touch' en PowerShell
Roger
Roger

Posted on • Edited on

7 5

Utilizar 'touch' en PowerShell

Si estas tratando de utilizar la PowerShell pero tu vienes de Linux/Unix puede que algunos comandos no los puedas utilizar aquí, como es el caso del comando touch, este comando es para crear archivos dentro de tu terminal, por ejemplo:



touch index.js


Enter fullscreen mode Exit fullscreen mode

Si tu utilizas este comando en tu PowerShell, no va a funcionar, es por eso que hoy te voy a mostrar como poder utilizar este comando en tu PowerShell.

Implementa touch en PowerShell

Primero, debes abrir tu perfil en tu editor de código favorito, en mi caso es nvim.



nvim $PROFILE


Enter fullscreen mode Exit fullscreen mode

Dentro, debemos colocar el siguiente código.



function Touch-File() {
    $fileName = $args[0]
    # Comprobar si el archivo existe
    if (-not(Test-Path $fileName)) {
        # Si no existe, crealo
        New-Item -ItemType File -Name $fileName
    }
    else {
        #Si existe, actualiza el timestamp
        (Get-ChildItem $fileName).LastWriteTime = Get-Date
    }
}

### Creando un alias para touch

# Checar si el alias touch existe
if (-not(Test-Path -Path Alias:Touch)) {
    New-Alias -Name Touch Touch-File -Force
}


Enter fullscreen mode Exit fullscreen mode

Estamos haciendo un par de cosas aquí:

  • Primero, creamos una función llamada Touch-File

  • Dentro de la función, capturamos el primer argumento que se le pasa y lo asignamos a la variable $fileName

  • Después, comprobamos si el archivo existe. Si no es así, creamos un archivo vacío con el nombre de la variable $fileName. Esto se hace usando el cmdlet New-Item, especificando que el objeto que queremos es un archivo y pasando el nombre del archivo

  • Si el archivo existe, actualizamos su hora de última actualización. Esto se hace configurando la propiedad LastWriteTime del archivo

  • Finalmente, después de crear la función, creamos un alias para que podamos usar Touch-File o el Touch más corto. Usamos el parámetro –Force para que en caso de que ya exista el alias, lo re-vinculamos

Ten en cuenta que no puedes establecer el alias desde dentro de la función, ya que parece que no puede crear un alias para una función que no se ha analizado y vinculado por completo.

Para probar esto, debes cerrar y abrir una nueva ventana de PowerShell y pruébalo.



touch index.txt


Enter fullscreen mode Exit fullscreen mode

Ahora deberías ver el nuevo archivo creado.
Prueba

Si quieres ver mas tutoriales como este puedes entrar a mi perfil y ahí encontraras una gran variedad de tips y tutoriales.👉Tips y Tutoriales.

Reinvent your career. Join DEV.

It takes one minute and is worth it for your career.

Get started

Top comments (0)

Cloudinary image

Optimize, customize, deliver, manage and analyze your images.

Remove background in all your web images at the same time, use outpainting to expand images with matching content, remove objects via open-set object detection and fill, recolor, crop, resize... Discover these and hundreds more ways to manage your web images and videos on a scale.

Learn more