Estou usando um tema escuro. Como você pode ver, os erros (ModuleNotFound do Python) são quase ilegíveis. Tenho duas perguntas.
- Essa cor é controlada pelo python ou pelo terminal?
- Como posso alterar a cor? Existe alguma configuração LS_COLOR?
Estou usando um tema escuro. Como você pode ver, os erros (ModuleNotFound do Python) são quase ilegíveis. Tenho duas perguntas.
Notei que usar Ctrl+L para limpar meu terminal tem algumas diferenças em relação ao uso do comando clear (do ncurses 6.5.20240427).
Parece que o comando clear apagará todos os caracteres do terminal, colocará o cursor no canto superior esquerdo e então digitará o prompt.
Ctrl+L pode parecer fazer o mesmo, mas as duas linhas superiores do meu prompt (e a linha em branco acima dela) não aparecem.
Curiosamente, se eu digitasse algo depois do prompt, isso seria mantido - e não apenas a linha em que o prompt estava, mas tudo depois dele.
Pesquisei man clear
e não encontrei opções para replicar esse comportamento. Então, o que exatamente Ctrl+L faz nos bastidores? Ele está invocando um programa ou é um comportamento incorporado à maioria dos emuladores de terminal, com implementação específica para o terminal?
Terminal > Configurações > Perfis > Shell > Quando o shell sai , opções:
Minha pergunta: Qual é o propósito prático da opção Não fechar a janela ? (Que, a propósito, é a escolha padrão.)
Aqui está um teste para demonstrar por que acho que Não fechar a janela é inútil; mas posso estar errado aqui, é claro:
- Abra o Terminal. Seu shell é zsh.
- Digite
bash
, pressione Return. Agora seu shell é bash.- Digite
exit
. Agora seu shell é zsh.- Digite
exit
. Então:
- Se você tiver Don't close the window , você terá uma janela inútil que você pode usar para qualquer coisa. Estranho.
- Se você tiver Close the window ou Close if the shell exited clear , essa janela inútil será fechada automaticamente. Ótimo.
Para o bem ou para o mal, conectei meu VT320 à minha máquina Linux. Estou tentando executar algum software, mas a conexão serial parece acabar em um estado de travamento sempre que alguns emojis são renderizados.
Não sei se é importante, mas nesse caso foi o emoji 🎲 (morrer). Em vez disso, recebo um ponto de interrogação espelhado e o terminal não renderiza mais nada.
Eu sei que emojis nunca funcionariam. Eu me contentaria com um caractere incorreto ou nenhum, mas eu gostaria de saber se é possível evitar o congelamento da conexão.
Caso seja relevante, é assim que o agetty é configurado no . Optei pelo VT220, pois é o mais próximo do que tenho./lib/systemd/system/[email protected]
ExecStart=-/sbin/agetty -h -L 19200 %I vt220
Saída de stty -a
:
speed 19200 baud; rows 24; columns 80; line = 0;
intr = ^C; quit = ^\; erase = ^?; kill = ^U; eof = ^D; eol = <undef>;
eol2 = <undef>; swtch = <undef>; start = ^Q; stop = ^S; susp = <undef>;
rprnt = <undef>; werase = <undef>; lnext = <undef>; discard = <undef>;
min = 1; time = 0;
-parenb -parodd -cmspar cs8 hupcl -cstopb cread clocal crtscts
-ignbrk -brkint -ignpar -parmrk -inpck -istrip -inlcr -igncr icrnl ixon ixoff
-iuclc -ixany -imaxbel -iutf8
opost -olcuc -ocrnl onlcr -onocr -onlret -ofill -ofdel nl0 cr0 tab0 bs0 vt0 ff0
isig icanon -iexten echo echoe echok -echonl -noflsh -xcase -tostop -echoprt
-echoctl echoke -flusho -extproc
Situação estranha
No Linux meu terminal funciona bem, neste exemplo depois de man wget...
No Solaris 10...
##IMAGEM COMEÇA AQUI##
##IMAGEM FIM AQUI##
Como você pode ver, a saída é truncada no meio, quando root@solaris10 aparece.
Estas são minhas configurações para terminal no Linux
stty -g
4500:5:bf:8a3b:3:1c:7f:15:4:0:1:0:11:13:1a:0:12:f:17:16:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0
Aqueles no Solaris stty -g
500:5:f00bf:8a3b:3:1c:7f:15:4:0:0:0:11:13:1a:19:12:f:17:16:0:0:1:1:0:00:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0
Saída mais amigável stty -a no Linux
speed 38400 baud; rows 24; columns 120; line = 0;
intr = ^C; quit = ^\; erase = ^?; kill = ^U; eof = ^D; eol = <undef>; eol2 = <undef>; swtch = <undef>; start = ^Q;
stop = ^S; susp = ^Z; rprnt = ^R; werase = ^W; lnext = ^V; discard = ^O; min = 1; time = 0;
-parenb -parodd -cmspar cs8 -hupcl -cstopb cread -clocal -crtscts
-ignbrk -brkint -ignpar -parmrk -inpck -istrip -inlcr -igncr icrnl ixon -ixoff -iuclc -ixany -imaxbel iutf8
opost -olcuc -ocrnl onlcr -onocr -onlret -ofill -ofdel nl0 cr0 tab0 bs0 vt0 ff0
isig icanon iexten echo echoe echok -echonl -noflsh -xcase -tostop -echoprt echoctl echoke -flusho -extproc
Isto está no Solaris
speed 38400 baud;
rows = 24; columns = 120; ypixels = 0; xpixels = 0;
csdata ?
eucw 1:0:0:0, scrw 1:0:0:0
intr = ^c; quit = ^\; erase = ^?; kill = ^u;
eof = ^d; eol = <undef>; eol2 = <undef>; swtch = <undef>;
start = ^q; stop = ^s; susp = ^z; dsusp = ^y;
rprnt = ^r; flush = ^o; werase = ^w; lnext = ^v;
-parenb -parodd cs8 -cstopb -hupcl cread -clocal -loblk -crtscts -crtsxoff -parext
-ignbrk -brkint -ignpar -parmrk -inpck -istrip -inlcr -igncr icrnl -iuclc
ixon -ixany -ixoff -imaxbel
isig icanon -xcase echo echoe echok -echonl -noflsh
-tostop echoctl -echoprt echoke -defecho -flusho -pendin iexten
opost -olcuc onlcr -ocrnl -onocr -onlret -ofill -ofdel
Termo usado, no Linux e Solaris, ambos xterm, eu altero para TERM=dtterm no Solaris, mas nada muda.
Este gif mostra o que acontece com o vim no Solaris
EDIT1: fiz uma reinicialização do terminal e o terminal Solaris também ficou bom , mas ele volta com bugs depois de algum uso, então não é uma solução.
EDIT2: acontece no terminal ssh, no terminal do console funciona bem.
Às vezes, se eu git checkout
, ou mesmo make
, acabo com alguma saída inesperada que me faz perguntar:
Espera, o quê? Vamos ver isso de novo.
Minhas opções geralmente são:
dpkg-buildpackage
esse, que falham devido a um cmake
erro de configuração, eles imprimem uma quantidade enorme de dados de depuração após o erro, então você REALMENTE tem que rolar muito para trás.| more
.
git checkout
.Existe um terminal que facilita a navegação pela saída de comandos anteriores?
Enquanto digito isso, no meu sistema Netrunner Debian 12 KDE, se eu clicar, por exemplo, em Ctrl- Alt- F3, será exibido um prompt de login de terminal.
Alguma sugestão de onde procurar?
/var/log/syslog
contém isso depois de fazer isso:
2024-11-27T18:59:14.388452-08:00 RzT470Netrunner systemd[1]: Started session-1623.scope - Session 1623 of User rinzin.
2024-11-27T18:59:14.394477-08:00 RzT470Netrunner wireplumber[1500]: SPA handle 'api.bluez5.enum.dbus' could not be loaded; is it installed?
2024-11-27T18:59:14.394688-08:00 RzT470Netrunner wireplumber[1500]: PipeWire's BlueZ SPA missing or broken. Bluetooth not supported.
2024-11-27T18:59:14.396358-08:00 RzT470Netrunner systemd[1]: [email protected]: Deactivated successfully.
2024-11-27T18:59:14.410998-08:00 RzT470Netrunner systemd[1]: session-1623.scope: Deactivated successfully.
2024-11-27T18:59:14.411962-08:00 RzT470Netrunner systemd[1]: [email protected]: Scheduled restart job, restart counter is at 3.
2024-11-27T18:59:14.412850-08:00 RzT470Netrunner systemd[1]: Stopped [email protected] - Getty on tty3.
2024-11-27T18:59:14.436539-08:00 RzT470Netrunner systemd[1]: Started [email protected] - Getty on tty3.
2024-11-27T18:59:16.025507-08:00 RzT470Netrunner rtkit-daemon[1392]: Supervising 0 threads of 0 processes of 0 users.
2024-11-27T18:59:16.034408-08:00 RzT470Netrunner rtkit-daemon[1392]: Supervising 0 threads of 0 processes of 0 users.
2024-11-27T18:59:20.238554-08:00 RzT470Netrunner wireplumber[1500]: SPA handle 'api.bluez5.enum.dbus' could not be loaded; is it installed?
2024-11-27T18:59:20.239586-08:00 RzT470Netrunner wireplumber[1500]: PipeWire's BlueZ SPA missing or broken. Bluetooth not supported.
2024-11-27T18:59:21.834857-08:00 RzT470Netrunner kded5[531489]: Initializing "/usr/lib/x86_64-linux-gnu/qt5/plugins/plasma/kcms/systemsettings/kcm_mouse.so"
2024-11-27T18:59:21.872833-08:00 RzT470Netrunner kded5[531489]: Initializing "/usr/lib/x86_64-linux-gnu/qt5/plugins/plasma/kcms/systemsettings/kcm_touchpad.so"
2024-11-27T18:59:21.872895-08:00 RzT470Netrunner kded5[531489]: kcm_touchpad: Using X11 backend
2024-11-27T18:59:21.874708-08:00 RzT470Netrunner kded5[531489]: Width: 3794 height: 3036
2024-11-27T18:59:21.874761-08:00 RzT470Netrunner kded5[531489]: Approx. resX: 42 resY: 60
2024-11-27T18:59:21.874822-08:00 RzT470Netrunner kded5[531489]: Touchpad resolution: x: 45 y: 54
2024-11-27T18:59:21.874863-08:00 RzT470Netrunner kded5[531489]: Final resolution x: 45 y: 54
2024-11-27T18:59:21.881830-08:00 RzT470Netrunner kwin_x11[1794]: qt.qpa.xcb: QXcbConnection: XCB error: 3 (BadWindow), sequence: 43603, resource id: 153092101, major code: 18 (ChangeProperty), minor code: 0
journalctl -r
isso eu encontro:
Nov 27 19:22:21 RzT470Netrunner login[532343]: Permission denied
Nov 27 19:22:21 RzT470Netrunner login[532343]: gkr-pam: couldn't unlock the login keyring.
Estou usando este comando para mostrar informações de status:
[root@iZm5e2jhfbrshckqh6qdbuZ system]# systemctl status kubelet
● kubelet.service - kubelet: The Kubernetes Node Agent
Loaded: loaded (/usr/lib/systemd/system/kubelet.service; disabled; vendor preset: disabled)
Drop-In: /usr/lib/systemd/system/kubelet.service.d
└─10-kubeadm.conf
Active: active (running) since Fri 2024-10-11 20:24:39 CST; 1min 52s ago
Docs: https://kubernetes.io/docs/
Main PID: 3076745 (kubelet)
Tasks: 12 (limit: 22976)
Memory: 95.1M
CGroup: /system.slice/kubelet.service
└─3076745 /usr/bin/kubelet --bootstrap-kubeconfig=/etc/kubernetes/bootstrap-kubelet.conf --kubeconfig=/etc/kubernetes/kubelet.conf --config=/var/lib/kubelet>
Oct 11 20:24:40 iZm5e2jhfbrshckqh6qdbuZ kubelet[3076745]: I1011 20:24:40.713781 3076745 reconciler_common.go:258] "operationExecutor.VerifyControllerAttachedVolume sta>
Oct 11 20:24:40 iZm5e2jhfbrshckqh6qdbuZ kubelet[3076745]: I1011 20:24:40.713816 3076745 reconciler_common.go:258] "operationExecutor.VerifyControllerAttachedVolume sta>
o log de saída contém apenas parte do conteúdo, como emitir a linha inteira e quebrar automaticamente o conteúdo da linha se ela exceder a tela? Eu não tentei nenhum pager como este:
[root@iZm5e2jhfbrshckqh6qdbuZ system]# systemctl --no-pager status kubelet
● kubelet.service - kubelet: The Kubernetes Node Agent
Loaded: loaded (/usr/lib/systemd/system/kubelet.service; disabled; vendor preset: disabled)
Drop-In: /usr/lib/systemd/system/kubelet.service.d
└─10-kubeadm.conf
Active: active (running) since Fri 2024-10-11 20:24:39 CST; 6min ago
Docs: https://kubernetes.io/docs/
Main PID: 3076745 (kubelet)
Tasks: 12 (limit: 22976)
Memory: 135.1M
CGroup: /system.slice/kubelet.service
└─3076745 /usr/bin/kubelet --bootstrap-kubeconfig=/etc/kubernetes/bootstrap-kubelet.conf --kubeconfig=/etc/kubernetes/kubelet.conf --config=/var/lib/kubelet…
isso apenas substitui o > para .... e ainda não conseguiu mostrar o conteúdo inteiro. Estou esquecendo de algo?
Gosto de usar a linha de comando, mas acabo recorrendo à interface gráfica do usuário e ao mouse.
Existe uma maneira de abrir um bash
terminal no local atual para o qual você está navegando em lf
? Navegar para um diretório usando cd é uma dor de cabeça.
Existe uma maneira de copiar para a área de transferência texto no terminal? Destacar e clicar com o botão direito para copiar é ridículo, devo estar fazendo coisas como um simplório.
No Zsh, para reverter o histórico de comandos de pesquisa, o atalho de teclado é Control-R. Por exemplo:
echo foo
echo bar
echo baz
Em seguida, pressione Control-R > Digite ec
> Você verá echo baz
> Pressione Control-R novamente > Você verá echo bar
.
Mas e se, depois de pressionar Control-R várias vezes, você tiver decidido avançar em vez de voltar? Vejo que as pessoas dizem que há Control-S para isso, mas também dizem que Control-S não funciona em muitos terminais por padrão, e parece que não funciona no Terminal padrão do macOS, nem no iTerm2.
O problema com Ctrl-S, no entanto, é que às vezes colide com o controle de fluxo XON/XOFF. - https://stackoverflow.com/a/791800
Talvez minha pergunta seja simplesmente uma duplicata, mas não acredito que não haja um atalho de teclado ou outra maneira de usá-lo pronto para uso, sem ajustes. Alguma ideia?