Mesin Linux lokal saya memiliki keluaran terminal berwarna seperti ini;
Ketika saya SSH ke kotak pfSense / BSD itu mengubah warna seperti ini;
Bahkan ketika saya SSH dari ke mesin yang tidak memiliki keluaran terminal lokal berwarna, dan SSH dari sana ke kotak pfSense / FreeBSD ini memungkinkan keluaran berwarna, dan mulai menghasilkan keluaran berwarna yang tidak diinginkan /
Apakah ada sesuatu yang bisa saya ubah secara lokal sehingga ketika saya SSH ke kotak pfSense dari mesin lokal saya atau melalui mesin perantara, klien saya akan mengabaikan pengaturan warna jarak jauh. Idealnya saya ingin tetap dalam hitam dan putih, latar belakang standar dua nada dan hanya warna teks?
TERM=xterm-mono ssh user@host
mendapatkan pengaturan itu di lingkungan yang jauh.Jawaban:
Warna di terminal Anda muncul karena tty mengirimkan urutan kontrol yang dikodekan ANSI untuk memberitahu terminal Anda untuk mengubah warna. Beberapa, jika tidak sebagian besar aplikasi terminal dapat dikonfigurasi untuk mengabaikan ini dan hanya menampilkan semua teks dalam satu warna.
Di
xterm
, Anda dapat menggunakan-cm
opsi. Untuk Konsole, seseorang dapat mengubah pemetaan semua warna menjadi sama. Aplikasi terminal XFCE Anda mungkin memiliki opsi serupa.sumber
Mengubah
TERM
variabel ke beberapa entri yang kompatibel tetapi tidak memiliki dukungan warna mungkin berfungsi. Suka:Pada dasarnya, Anda memerlukan
TERM
termcap sistem FreeBSD yang dikenal atau database terminfo yangTERM=the-term tput colors
tidak mengembalikan angka positif, dan untuk GNU ls, yangdircolors -p | grep -x 'TERM the-term'
tidak mengembalikan apa pun. Mungkin masih tidak berfungsi untuk aplikasi yang menghasilkan urutan pelepasan warna terlepas dari apakah terminal mengklaim mendukungnya atau tidak.Atau, Anda dapat menggunakan GNU
screen
untuk menonaktifkan warna, seperti (sintaks zsh):Itu akan memungkinkan cetak tebal untuk setiap upaya untuk mengatur warna latar depan dan membalikkan untuk setiap upaya untuk mengatur warna latar belakang.
Saya pikir itu semua bermuara pada kenyataan bahwa FreeBSD mengasumsikan bahwa latar belakang terminal adalah hitam (atau setidaknya gelap). Di mana Anda menggunakan
xterm
alih-alihxfce-terminal
, Anda bisa secara dinamis mengubah latar belakang dan warna foreground dan / atau warna individual untuk mengatur profil warna yang berbeda. Itu dilakukan melalui urutan melarikan diri, tetapi Anda juga dapat menggunakanxtermcontrol
perintah yang membuatnya lebih mudah.sumber
export TERM=vt100
sebelumnyals --color
masih menunjukkan keluaran berwarna.vt100
sebagai terminal dengan dukungan warna. Saya telah mengubah doxterm-old
yang tidak memiliki masalah itu tetapi mungkin tidak memiliki entri terminfo di FreeBSD.byobu
. Saya di Ubuntu 12,04 btw.$TERM
dan termcap / terminfo database (melalui kutukan atau API terminal lainnya) alih-alih hardcoding urutan melarikan diri.Ketik perintah berikut untuk menghapusnya:
atau gunakan
unalias
untuk menghapusnya:sumber
ls
komad?ls
perintah, jadi seperti komentar saya sebelumnya: bukankah itu hanya akan berhentils
menghasilkan output berwarna, semuanya masih akan berwarna?Jika Anda tidak ingin memodifikasi ~ / .bashrc Anda yang saya yakin mengandung sesuatu seperti
export PS2=.....+colors......
:Di Konsol linux, coba salah satu
TERM=linux-m1b
atauTERM=linux-m2
untuk mendapatkan monokrom sebagai "Abu-abu / Putih / Hitam dan Dim" untuk linux-m1b atau "Hijau / Putih / Hitam dan Biru" (antik!) Untuk linux-m2 ...Dengan Putty (ada port untuk pengguna Mac), gunakan
TERM=putty-m1b
danTERM=putty-m2
alih - alih ...Ini akan melakukan apa yang Anda butuhkan tetapi: Anda akan memerlukan database terminfo terbaru untuk itu atau mendapatkannya dari sana jika perlu:
wget http://canal.chez.com/linux.ti ; tic -x linux.ti
Alex PS: xterm-mono sepertinya tidak ada lagi.
sumber
Pertama, periksa alias default Anda:
Jika tidak berhasil dan Anda perlu solusi cepat. Coba ini
ls
danawk
pipa:atur perms
744
.Satu tempat aman untuk ini adalah
/usr/local/bin
Pastikan PATH Anda termasuk/usr/local/bin
.Sekali lagi gunakan kebijaksanaan.
Satu hal ... warnanya dimaksudkan untuk menandai direktori ... mematikan
ls="ls --color=auto"
hanya nama daun ...ls -aF
atauls -F
akan menambahkan nama direktori/
. Jadi saya sarankan agar Anda waspada. Anda bisaalias ls="ls -aF"
ataualias ls="ls -F"
.sumber