Envoyer le file à l'éditeur ouvert en utilisant la command line

Récemment, j'ai découvert une nouvelle command très utile. C'est:

gnome-open

ou

xdg-open

ou juste

ouvrir

sur mac.

Il ouvre le file ou le directory par défaut programme spécifié.

Mais, dans le cas où j'ai besoin d'ouvrir un file dans un rédacteur déjà en cours d'exécution (je veux dire envoyer le file à un process en cours d'exécution), je n'ai pas de solution. Je me request s'il y a moyen d'y parvenir ou s'il est possible d'écrire un script qui puisse le faire.

Par exemple, si je veux l'envoyer à une instance d'eclipse déjà en cours d'exécution.

Type de glisser-déposer par command line.

As-tu essayé

eclipse --launcher.openFile <absolute path of file to open> 

Fonction Eclipse OpenFile .

Ce type de contrôle est spécifique au programme. Différents éditeurs le soutiendront de différentes manières ou ne le soutiendront pas du tout. Par exemple, Eclipse utilise la command mentionnée par Mikel. Vim ou GVim, qui est mon éditeur préféré, prend en charge un mécanisme sophistiqué de contrôle à distance au-delà de l'ouverture d'un file dans une window existante. Pour charger simplement un file dans une session existante:

 gvim --remote file1.c file2.c 

Il commencera également une session existante s'il ne peut pas en find un existant. Vous pouvez également nommer des windows GVim spécifiques pour les cibler et effectuer des scripts à distance des windows GVim existantes. Je suis sûr qu'Emacs a des fonctionnalités similaires.

La plupart des programmes qui acceptent un nouveau file ou une autre input d'object auront un file binary distinct pour communiquer avec le file principal, généralement appelé "distant". Je ne sais pas sur eclipse, mais par exemple gimp-remote vous permet d'ouvrir de nouvelles images dans l'application déjà en cours d'exécution.

J'ai essayé votre command "gnome-open" à partir de la command line, et Il ouvre le file sous-jacent dans une application associée.

Par exemple j'exécute la command "gnome-open /etc/X11/xorg.conf", il s'ouvre dans gedit.

Et à partir de la command line, j'exécute à nouveau la command, "gnome-open / etc / passwd". Maintenant, ce file est également ouvert dans la même instance de gedit.

Donc, je suppose, c'est ce que vous cherchez.

Vous devez utiliser la command "gnome-open" uniquement.