Jak otevřít soubor s výchozí aplikací z příkazového řádku?

148

V souboru Nautilus, když dvakrát kliknete na soubor, otevře se s výchozí aplikací přidruženou k příponě souboru. Například soubory ve formátu .html se otevře ve webovém prohlížeči a aplikace .pdf se otevře v Prohlížeči dokumentů. Existuje způsob, jak reprodukovat stejné chování z příkazového řádku (tj.% Co_kde%)? Ptám se, protože chci procházet můj souborový systém z příkazového řádku, ale někdy si nepamatuji, která aplikace. otevře co.

    
dané Olivier Lalonde 29.11.2010 13:07

3 odpovědi

194

Myslím, že xdg-open je příkaz, který hledáte.

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.

např .:xdg-open index.php

Otevře se index.php v geditu (pokud používáte GNOME).

Chcete-li otevřít adresu URL v prohlížeči

xdg-open http://google.com

Otevře se google.com ve vašem výchozím prohlížeči.

xdg-open je wrapper skript - použije nástroj prostředí prostředí (gio open,gvfs-open,kde-open,gnome-open,dde-open,exo-open a řada dalších nástrojů ). Je také standardně nainstalován a pravděpodobně pracuje na minulých, současných i budoucích verzích (na druhé straněgvfs-open agnome-open byly zastaralé a v budoucích verzích nemusí být k dispozici).

    
odpověděl aneeshep 29.11.2010 13:13
45

xdg-open agnome-open

xdg-open je nejobecnější cesta (pracovat také na KDE)

    
odpověděl shellholic 29.11.2010 13:11
7

Pokud chcete:

  • vytvořit alias pro tento příkaz (např.open)
  • skrýt výstup z příkazu
  • pokračujte v používání tohoto terminálu po

Tuto funkci .bashrc můžete použít :

function open () {
  xdg-open "$@">/dev/null 2>&1
}
    
odpověděl Jesse Knight 14.12.2017 16:29