Pada macOS di Terminal default yang berjalan bash
, saya bisa mengetik:
open -a Firefox http://www.wikipedia.org
untuk membuka URL dengan Firefox, atau browser lain. Ini juga berfungsi untuk meluncurkan program, misalnya open -a maps
, dan untuk membuka file di program default, misalnya open file.pdf
.
Bagaimana saya bisa melakukan hal yang sama pada Ubuntu di Terminal GNOME default juga berjalan bash
? Saya tahu bahwa saya dapat membuka file atau URL xdg-open /path/to/file
, dan saya dapat membuka browser default dengan sensible-browser
. Apakah Ubuntu memiliki perintah umum untuk membuka file, aplikasi, atau file dalam aplikasi tertentu?
Saya berjalan bash
di kedua mesin, 3.2.57(1)-release
di macOS dan 4.4.19(1)-release
di Ubuntu.
command-line
miguelmorin
sumber
sumber
open -a Firefox http://www.wikipedia.org
? Tidak bisa Anda lakukanfirefox http://www.wikipedia.org
? Sepertinya fitur yang tidak bergunaopen
, ketika membuka program adalah intinyabash
.bash: firefox: command not found
. Kesalahan yang sama denganFirefox
sebagai nama program.bash
bekerja persis sama; Firefox yang diinstal berbeda dari pada Ubuntu. Di macOS, Anda bisa, misalnya, menjalankan/Applications/Firefox.app/Contents/MacOS/firefox-bin
dari baris perintah.Firefox.app
adalah jenis khusus dari folder yang berisi bukan hanya executable, tapi file yang di Linux mungkin berserakan di berbagai/usr/bin/
,/usr/lib
,/etc
, dll direktori. Finder tahu cara menjalankan aplikasi yang sebenarnya ketika Anda, misalnya, klik dua kaliFirefox.app
.open
adalah cara untuk "menjalankan" folder khusus dari baris perintah.bash
bekerja secara berbeda: firefox diinstal sebagai aplikasi OS X (Firefox.app
) dan tidak ada pada PATH biasa. Alasan lain untuk menggunakannyaopen -a
adalah bahwa aplikasi ini benar-benar latar belakang aplikasi yang diluncurkannya, alih-alih menunggu sampai keluar.&
Jawaban:
Anda dapat secara khusus menggunakan nama program yang Anda inginkan (jika itu dapat digunakan sebagai alat baris perintah).
Misalnya, url:
PDF:
Gambar-gambar:
Teks:
Video / Musik:
Jika Anda ingin program dijalankan terpisah dari terminal maka ini adalah cara yang saya sukai untuk melakukannya:
Sebagai contoh:
Ingatlah bahwa Anda selalu dapat mengarahkan output seperti biasa, misalnya:
sumber
eog picture.jpg
untuk gambar juga jika Anda telah menginstal gnome-desktop :)open
untuk menelepon program lain. Mengapa tidak langsung menghubungi program lain? Kegunaan apa yangopen
ditambahkan? Jawaban ini mencerminkan hal alami yang harus dilakukan untuk membuka aplikasi spesifik.open
pada macOS berfungsi baik untuk membuka file dan folder di aplikasi default dan di aplikasi tertentu. Tampaknya yang aslibash
melanjutkan jalur yang berbeda denganxdg-open
untuk file dan nama aplikasi untuk yang lain.open
di MacOS adalah bahwa ia meluncurkan aplikasi yang terlepas dari konsol yang dijalankannya, yaitu jika konsol ditutup, aplikasi akan tetap menyala. Di Ubuntu kita perlu menggunakannohup
perintah untuk mendapatkan perilaku yang sama. (karena mengawali setiap perintah dengan nohup dan mengarahkan ulang output untuk setiap perintah yang Anda jalankan akan melelahkan, mungkin lebih masuk akal untuk menentukan pintasan khusus)