Dengan peluncur untuk aplikasi terminal, bagaimana saya bisa menjaga terminal tetap terbuka setelah program selesai?
24
Saya memiliki perintah terminal yang saya jalankan dari peluncur aplikasi. Ini berfungsi dengan baik, namun kadang-kadang perintah gagal, jadi saya ingin terminal tetap terbuka sehingga saya bisa melihat hasilnya. Bagaimana saya bisa melakukan ini?
Dengan asumsi perintah Anda dipanggil mycommand, saya akan mengubah peluncur saya untuk menjalankan ini:
gnome-terminal -e "mycommand|less"
Jika Anda menginginkan solusi yang lebih permanen, mungkin lebih bersih, buka terminal gnome, buka Edit, Preferensi profil dan klik tab Judul dan Perintah. Ubah opsi "Ketika perintah keluar" ke "Tahan terminal terbuka".
Ketika Anda menjalankan perintah, terminal itu seharusnya sekarang terbuka ketika sesuatu berjalan.
Sunting: Jika Anda tidak terlalu peduli dengan terminal, Anda bisa menggunakan flag hold xterm:
Untuk menjaga terminal default 'ketika tindakan keluar', saya sarankan untuk membuat profil terminal baru, atur agar tetap terbuka setelah perintah keluar, dan berikan --tab-with-profile=PROFILENAMEopsi terminal gnome-terminal . Anda dapat memiliki banyak profil untuk bahaviours yang berbeda dengan cara ini :-)
terbalik
1
xterm -hold -e mycommand
8
Peluncur Anda menjalankan skrip, bukan?
Di akhir skrip Anda tambahkan
read -p "Press any key to exit > " -n1 junk
echo
Maka skrip Anda akan menunggu hingga Anda memilih untuk mengakhirinya.
+1, dan untuk menampilkan prompt hanya jika perintah gagal (mengembalikan kode keluar non-nol) yang bisa dilakukancommand || read -n1 -p "Command failed. Press any key to exit..."
Pendekatan yang sedikit berbeda dari jawaban lain: jalankan perintah Anda dan jika itu gagal, maka ciptakan shell. Dengan cara ini Anda tidak perlu menahan terminal terbuka (yang tidak membedakan antara keberhasilan atau kegagalan perintah), dan Anda mungkin menemukan shell yang sangat berguna dalam kegagalan. Untuk menutupnya, cukup gunakan Ctrl-D (EOF), "keluar", Alt-F4 (atau apa pun yang digunakan manajer jendela Anda untuk menutup windows), dll.
Jawaban ini memberikan jawaban terbaik yang pernah saya lihat sejauh ini untuk melakukan apa yang Anda inginkan. Mereka merekomendasikan membuat skrip dengan perintah untuk mengeksekusi dan menggunakannya dengan parameter --init-file (spesifik bash, tetapi Anda mungkin bisa melakukan hal yang sama untuk csh / tcsh / zsh, dll):
#!/bin/bash --init-file
commands to run
... dan jalankan sebagai:
xterm -e /path/to/script
# or
gnome-terminal -e /path/to/script
# or
the-terminal -e bash --init-file /path/to/script/with/no/shebang
Format:, watch -n60 myCommandatauwatch -n60 "my command string"
yang -nditentukan jumlah detik untuk menunggu antara panggilan ke mycommand ; mis: perintah di atas akan memanggil perintah saya setiap 60 detik, selamanya.
Jika perintah ini beberapa kata, memasukkannya tanda kutip dalam ganda: "my command string".
Katakanlah Anda menginginkan Peluncur yang menampilkan penggunaan disk, dan tetap terbuka agar pembaca dapat melihatnya. Saya cukup menggunakan perintah ini di dalam Peluncur:, watch -n60 "df -h"yang memanggil df -hsekarang setiap 60 detik.
Saya suka ini karena jawaban yang diterima gnome-terminal -e "mycommand|less"karena saya menjalankan Xubuntu, yang menggunakan terminal berbeda secara default.
--tab-with-profile=PROFILENAME
opsi terminal gnome-terminal . Anda dapat memiliki banyak profil untuk bahaviours yang berbeda dengan cara ini :-)xterm -hold -e mycommand
Peluncur Anda menjalankan skrip, bukan?
Di akhir skrip Anda tambahkan
Maka skrip Anda akan menunggu hingga Anda memilih untuk mengakhirinya.
sumber
command || read -n1 -p "Command failed. Press any key to exit..."
Di pintasan .desktop Anda, gunakan ini
Setelah skrip Anda selesai, proses Bash akan menggantikan dirinya dengan doa baru sendiri.
Jika Anda harus memberikan argumen yang dikutip ke skrip Anda, Anda harus menghindari kutip:
sumber
Pendekatan yang sedikit berbeda dari jawaban lain: jalankan perintah Anda dan jika itu gagal, maka ciptakan shell. Dengan cara ini Anda tidak perlu menahan terminal terbuka (yang tidak membedakan antara keberhasilan atau kegagalan perintah), dan Anda mungkin menemukan shell yang sangat berguna dalam kegagalan. Untuk menutupnya, cukup gunakan Ctrl-D (EOF), "keluar", Alt-F4 (atau apa pun yang digunakan manajer jendela Anda untuk menutup windows), dll.
sukses-atau-shell
Tempatkan file ini di suatu tempat, seperti ~ / bin, lalu gunakan "sukses-atau-shell perintah asli Anda" di peluncur Anda.
sumber
Jawaban ini memberikan jawaban terbaik yang pernah saya lihat sejauh ini untuk melakukan apa yang Anda inginkan. Mereka merekomendasikan membuat skrip dengan perintah untuk mengeksekusi dan menggunakannya dengan parameter --init-file (spesifik bash, tetapi Anda mungkin bisa melakukan hal yang sama untuk csh / tcsh / zsh, dll):
... dan jalankan sebagai:
sumber
Gunakan
watch
perintah.Format:,
watch -n60 myCommand
atauwatch -n60 "my command string"
-n
ditentukan jumlah detik untuk menunggu antara panggilan ke mycommand ; mis: perintah di atas akan memanggil perintah saya setiap 60 detik, selamanya."my command string"
.Katakanlah Anda menginginkan Peluncur yang menampilkan penggunaan disk, dan tetap terbuka agar pembaca dapat melihatnya. Saya cukup menggunakan perintah ini di dalam Peluncur:,
watch -n60 "df -h"
yang memanggildf -h
sekarang setiap 60 detik.Saya suka ini karena jawaban yang diterima
gnome-terminal -e "mycommand|less"
karena saya menjalankan Xubuntu, yang menggunakan terminal berbeda secara default.sumber
Coba klik kanan peluncur dan masukkan properti.
Seharusnya ada opsi untuk menjaga jendela terminal tetap terbuka
Dalam file .desktop, harus ada entri
X-KeepTerminal=true
sumber