Commande équivalente Linux pour la commande «open» sur Mac / Windows?

46

Venant de Mac OS X, vous pouvez taper:

$ open yourfilehere.txt

et votre fichier s'ouvrira comme si vous l'aviez ouvert depuis le Finder.


Sous Windows, on peut taper:

> start yourfilehere.txt

et il s’ouvrira comme si vous l’aviez ouvert depuis Explorer.


Sous Ubuntu, j'aimerais pouvoir ouvrir des fichiers de la même manière dans GNOME. Quelle est la commande?

Jweede
la source
1
Dans peu de parenté j'ai trouvé ce petit bijou pour ouvrir le Finder dans un certain chemin (pas nécessairement actuel): open -a Finder. ou ouvrez un Finder / votre / chemin / ici
Mikko Ohtamaa 10/02/2012
Je viens de voir que sur Windows, c'est le startprogramme. Sous OS X, c'est le openprogramme. Sur Ubuntu Linux, c'est le seeprogramme. dans le livre automatate-the-boring-stuff-with-python , mais je n’ai reçu aucune information sur les seecommandes de Google.
CodyChan

Réponses:

39

xdg-open est ce que vous cherchez.

Vous pourriez aimer cet extrait que j'ai mis dans mes fichiers .bashrc afin que, que j'utilise cygwin sous Windows, Linux ou OSX, je peux utiliser les commandes de démarrage ou d'ouverture pour qu'elles fonctionnent parfaitement:

case "$OSTYPE" in
   cygwin*)
      alias open="cmd /c start"
      ;;
   linux*)
      alias start="xdg-open"
      alias open="xdg-open"
      ;;
   darwin*)
      alias start="open"
      ;;
esac

Bons commentaires, xdg-open est en effet une meilleure option que gnome-open, comme expliqué ci-dessous. J'ai mis à jour mes scripts personnels il y a quelque temps, mais j'ai oublié de mettre à jour cette réponse.

AVERTISSEMENT: Ceci annulera les fonctionnalités de openvt(terminal virtuel) et startd’init.

Jordan
la source
1
Ce script BASH est une excellente idée.
jweede
9
cygwin: essayez "cygstart"
Doug Harris
13
gnome-open est spécifique à GNOME. xdg-open est disponible sur toutes les distributions compatibles Freedesktop.org.
Avdi
@DougHarris, +1. cygstartpeut être préférable, car dans les marque-pages Emacs, cela permet de continuer à utiliser Emacs. Avec start, mon Emacs est gelé.
Brady Trainor
Ensuite, c'est bien de commencer si vous ne voulez pas compter sur la disponibilité de Cygwin. start ""ou "start \"\""juste travaillé pour moi. (Les guillemets "" empêchent Emacs de
Brady Trainor
34
xdg-open xyz.bar

s’ouvrira xyz.bar(peut être un fichier ou une URL) dans n’importe quel environnement compatible avec freedesktop avec l’application enregistrée pour xyz.barle type de. Voir aussi la documentation ici (page de manuel de xdg-open) .

En PRACTIVE cela devrait alors appeler kde-open, gnome-open, exo-openou peut - être même open, en fonction de l'environnement de bureau actuel (KDE, Gnome, XFCE, OS X).

Akira
la source
3
fonctionne aussi. Quelle est la différence entre xdg-openet gnome-open?
jweede
5
Eh bien, xdg-open a été développé par les utilisateurs de freedesktop.org qui prétendent créer le "standard", tandis que gnome-open a été développé par les utilisateurs de gnome .. que vous n’obtenez que lorsque vous installez gnome. Personnellement, j'aime davantage les éléments freedesktop.org.
Akira
2
En effet, xdg-open est la bonne réponse ici. gnome-open est spécifique aux ordinateurs de bureau sur lesquels GNOME est installé. xdg-open sera disponible sur tout système compatible freedesktop.
Avdi
2
"xdg-open sera disponible sur tout système compatible freedesktop" signifie en pratique que, que vous utilisiez GNOME, KDE, Xfce ou tout autre environnement, vous xdg-openferez la bonne chose en utilisant le type de fichier -mappage de programme de l'environnement en cours d'exécution.
RavuAlHemio
C'est presque équivalent à la commande "open" de Mac, mais pas tout à fait - je constate (sous Ubuntu 14 au moins) que lorsque je l'utilise sur un répertoire, celui-ci s'ouvre en arrière-plan. Je préférerais que ce soit la fenêtre fraîchement ouverte à l'avant. Un moyen de le faire faire ça? (Pardonnez-moi, je suis un noob Linux total.)
Joe Strout
10

Vous pouvez même écrire un petit wrapper autour de gnome-open pour ouvrir plusieurs fichiers avec une seule commande:

for i in $*
do
    gnome-open "$i"
done

Mettez ceci dans un script shell nommé open et

open *.c

ouvrira tous les fichiers c du répertoire en cours.

Kim
la source
2
Script utile, mais vous voudrez remplacer $ * par "$ @" (y compris les guillemets) pour gérer correctement les noms de fichiers avec des espaces.
Pimlottc
1

Vous pouvez utiliser la gnome-opencommande dans votre terminal. Une fois dans le répertoire dans lequel vous souhaitez ouvrir une fenêtre de système d'exploitation, tapez le terminal:

gnome-open .

Cela ouvrira une fenêtre montrant ce qui est dans ce dossier. De même, vous pouvez spécifier un sous-dossier situé dans ce répertoire en remplaçant le. par le nom du sous-dossier.

Notez que si gnome-openne fonctionne pas, il faudra peut-être simplement l’installer. Vous pouvez le faire en utilisant Synaptic ( sudo apt-get updateet ensuite sudo apt-get install synapticdans votre terminal, ce qui est très pratique lors de l’installation de package car il installe correctement toutes les dépendances) ou directement installer Gnome Shell dans votre Terminal:sudo apt-get install gnome-shell

Le chat
la source
-1

Entrez ceci dans le terminal: ./yourfile

yourfileest le nom du fichier que vous voulez ouvrir ou exécuter. Vous pouvez également utiliser cette commande pour exécuter des scripts bash. (N'oubliez pas d'entrer l'extension du fichier!)

gnome-open est ce que vous cherchez.

Une autre citation d'une autre affiche.

utilisateur113907
la source