GNU/Linux >> Belajar Linux >  >> Linux

Bagaimana saya tahu saya menjalankan di dalam layar linux atau tidak?

Solusi 1:

(Dicuri dari "Bagaimana saya tahu apakah saya ada di layar?" di StackOverflow dan ditulis oleh pengguna jho. P.S. Anda tidak dapat memilih duplikat di seluruh situs StackExchange.)

Centang $STY . Jika nol, Anda berada di terminal "asli". Jika berisi sesuatu, itu adalah nama layar tempat Anda berada.

Jika Anda tidak ada di layar:

[email protected] ~ $ echo $STY
[email protected] ~ $ 

Jika Anda berada di layar:

[email protected] ~ $ echo $STY
2026.pts-0.ip-10-0-1-71

Jika Anda menggunakan tmux sebagai pengganti layar, centang juga $TMUX . Untuk menambahkan ini ke prompt Anda, tambahkan berikut ini ke ~/.bashrc Anda :

if [ -n "$STY" ]; then export PS1="(screen) $PS1"; fi
if [ -n "$TMUX" ]; then export PS1="(tmux) $PS1"; fi

Solusi 2:

Cari $STY yang memberikan detail bahwa screen gunakan untuk berkomunikasi dengan dirinya sendiri; $WINDOW kemudian akan menjadi screen saat ini nomor jendela.

Solusi 3:

Pemeriksaan sederhana yang biasanya saya gunakan adalah dengan menekan Ctrl -a :

  • Jika kursor melompat ke awal baris , saya tidak di dalam sesi layar.

  • Jika tidak terjadi apa-apa , saya tahu bahwa Saya ada di dalam sesi layar dan saya baru saja menggunakan tombol kontrol layar. Saya kemudian menekan a (melompat ke awal baris), w (tampilkan jendela layar saat ini) atau jalankan beberapa perintah layar "tidak berbahaya" lainnya untuk kembali ke prompt perintah.

(Tentu saja, ini hanya berfungsi jika Anda sedang menjalankan bash atau perangkat lunak lain yang "melompat ke awal baris" atau melakukan sesuatu yang sama tidak berbahayanya saat menekan Ctrl-a.)

Solusi 4:

Nah, paling waktu (tidak ada upaya seseorang untuk mengacaukan sesuatu) TERM Anda akan disetel ke screen (atau setidaknya sebutkan screen di suatu tempat).

Solusi mudah untuk masalah ini adalah menjalankan layar di mana saja. Jangan tinggalkan rumah tanpanya, kataku.

Solusi 5:

Saya menyimpan ini di .bashrc saya :

 PS1='[\[email protected]\h \W'
 if [ "$WINDOW" ]; then PS1="$PS1 ($WINDOW)"; fi
 PS1="$PS1]$"

Ini tidak mudah, tetapi setiap kali saya membuat layar baru, itu menempatkan nomor jendela di prompt. Jika saya tidak menjalankan screen , tidak ada nomor.


Linux
  1. Cara Membunuh Proses yang Berjalan di Linux

  2. Cara Menggunakan Perintah Layar Linux

  3. Bagaimana cara membuat daftar sesi layar yang sedang berjalan?

  1. Bagaimana saya tahu jika saya menjalankan shell bersarang?

  2. di konsol linux, cara TIDAK membungkus keluaran

  3. Bagaimana cara mengetahui di mana suatu program macet di linux?

  1. Cara menggunakan perintah "layar" di Linux

  2. Bagaimana saya tahu jika saya menjalankan Linux 32 atau 64-bit?

  3. Linux - Tolong, saya kehabisan inode!