¿Cómo abrir el archivo con la aplicación predeterminada desde la línea de comandos?

148

En Nautilus, al hacer doble clic en un archivo, se abrirá con la aplicación predeterminada asociada a la extensión del archivo. Por ejemplo, los archivos .html se abrirán en un navegador web y .pdf se abrirá con Document Viewer. ¿Hay alguna manera de reproducir el mismo comportamiento desde dentro de la línea de comando (es decir, open path/filename )? Lo estoy preguntando porque me gusta navegar por mi sistema de archivos desde la línea de comandos pero a veces no recuerdo qué aplicación. abre qué.

    
pregunta Olivier Lalonde 29.11.2010 - 13:07

3 respuestas

193

Creo que xdg-open es el comando que está buscando.

NAME
       xdg-open - opens a file or URL in the user's preferred application

SYNOPSIS
       xdg-open {file | URL}

       xdg-open {--help | --manual | --version}

DESCRIPTION
       xdg-open opens a file or URL in the user's preferred application. If a
       URL is provided the URL will be opened in the user's preferred web
       browser. If a file is provided the file will be opened in the preferred
       application for files of that type. xdg-open supports file, ftp, http
       and https URLs.

p. ej .: xdg-open index.php

Esto abrirá index.php en gedit (si está usando gnome).

Si desea abrir una url en el navegador

xdg-open http://google.com

esto abrirá google.com en su navegador predeterminado.

xdg-open es una secuencia de comandos contenedora: usará la herramienta del entorno de escritorio ( gio open , gvfs-open , kde-open , gnome-open , dde-open , exo-open y una serie de otras herramientas similares ) También está instalado por defecto, y es muy probable que funcione en versiones pasadas, actuales y futuras (por otro lado, gvfs-open y gnome-open han quedado obsoletos, y pueden no estar disponibles en futuras versiones).

    
respondido por el aneeshep 29.11.2010 - 13:13
45

xdg-open y gnome-open

xdg-open es la forma más universal (también funciona en KDE)

    
respondido por el shellholic 29.11.2010 - 13:11
7

Si quieres:

  • crea un alias para este comando (por ejemplo, open )
  • ocultar salida del comando
  • continúa utilizando esta terminal después de

Puedes utilizar esta función .bashrc :

function open () {
  xdg-open "[email protected]">/dev/null 2>&1
}
    
respondido por el Jesse Knight 14.12.2017 - 16:29

Lea otras preguntas en las etiquetas