Configurações> Interação do Terminal do Windows tem uma caixa de seleção "Detectar URLs automaticamente e torná-los clicáveis". Isso detecta apenas frases que começam com http://
ou https://
, por exemplo, https://www.microsoft.com
.
Pode ser feito para detectar também, por exemplo, www.microsoft.com
? Existe um regex enterrado em algum lugar que possa ser modificado?
Camille Goudeseune's questions
Durante mutt -f imaps://imap.example.com/INBOX
, quando envio um e-mail, se eu usar Cco para mim mesmo, o Cco será enviado para a caixa de entrada do meu provedor de e-mail em example.com. Então é uma etapa extra para recuperar essa mensagem.
Em vez disso, posso copiar diretamente para o meu spool de correio local, o arquivo /var/mail/myself
? Existe uma sintaxe para isso?
Mesmo que .muttrc tenha my_hdr Bcc: $spoolfile
, ele acaba aparecendo como .Bcc: /var/mail/[email protected]
Ubuntu 22, com seu atual vira-lata 2.1.4.
Eu leio e-mails mutt
em um host Ubuntu 18, no qual eu ssh.
Quando eu ssh do macOS 11 (via iTerm2, se isso importa) ou de outro host Ubuntu 18, tudo está bem.
Mas quando eu ssh do WSL2 (executando o Ubuntu 18, 20 ou 22), as cores do mutt estão erradas. As linhas superior e inferior permanecem corretas, mas a lista de e-mails mudou de cinza brilhante em preto para cinza brilhante em branco, quase ilegível. Idem para visualizar um e-mail: o fundo ficou branco.
Nenhuma color
diretiva está no ~/.muttrc
. Mas quando eu adiciono, por exemplo, color normal red black
, o texto cinza claro fica vermelho (como deveria), mas o plano de fundo não fica preto (minha escolha foi substituída). Essa substituição acontece apenas no WSL2, não no macOS ou no Ubuntu.
Ainda mais estranho, quando escolho uma cor de fundo não preta (ciano, preto brilhante, amarelo brilhante etc.), a cor de fundo muda de WSL2 (e dos outros). Preto é especial.
Para WSL2 versus os outros, as saídas de set
e env
diferem apenas em SSH_CONNECTION, SSH_CLIENT, SSH_TTY, XDG_SESSION_ID e coisas efêmeras como OLDPWD, LINES, COLUMNS.
Em particular, TERM é sempre xterm-256color
. Então duvido que esse vira-lata saiba se veio ou não do WSL2. Portanto, a configuração incorreta provavelmente não está no mutt, mas no WSL2.
No WSL2, nenhuma alteração acontece quando ajusto o botão direito do mouse > propriedades > cores > quatro botões de opção para cores ou propriedades > terminal > caixas de seleção para cores separadas de primeiro plano/fundo.
Como posso impedir que o WSL2 substitua a cor de fundo padrão para branco?
Algo diferente de vira-lata também pode provocar esse comportamento? (Não vim: em todos os casos, seu tema solarized8 e a coloração de sintaxe são renderizados bem.)
Enquanto WFH, meu laptop de trabalho (macOS big sur 11.6) usa uma VPN (cisco anyconnect) que desativa efetivamente seu endereço IP 192.168.1.xxx, que de outra forma permitiria ver e ser visto pelos outros hosts e pela impressora no meu 192.168 .1.xxx LAN.
Existe uma maneira de mover dados entre o laptop e a LAN sem depender de um serviço externo intermediário , como dropbox, pastebin, web email, scp de/para um host de nuvem ou mesmo copiar de/para um serviço de bate-papo?
(A caixa de seleção de Preferências da VPN "Permitir acesso à LAN ao usar VPN (se configurada)" está marcada, mas o laptop não vê a LAN. Portanto, a compilação que recebi deve estar desconfigurada. Sua página de estatísticas também diz "Tunnel All Traffic" através da VPN, ou seja, até mesmo pacotes enviados para 192.168. Portanto, o tunelamento dividido não está disponível.)
Não há wifi em casa, por motivos, mas o bluetooth está disponível.
Se não houver uma solução de software:
Antigamente, você usaria um cabo de modem nulo RS232. Um cabo semelhante poderia funcionar entre o USB-C do laptop e algo na LAN? Isso é apenas para mover o arquivo de megabyte ocasional ou o comando de cem bytes, portanto, a latência e a largura de banda dificilmente importam.
Como posso copiar o texto completo da barra de título de um programa do Windows, as letras reais e não apenas uma captura de tela, para colar em, por exemplo, o Bloco de Notas? Neste exemplo, gostaria de obter o texto literal
screenshot.png - IrfanView (Zoom: 1674 x 1046) (Selection: 811, 212; 2137 x 1312; 1.629)
Salvar o texto em um nome de arquivo codificado ou em outro lugar também é bom. Eu só quero evitar lê-lo manualmente e digitá-lo, o que é lento e propenso a erros.
No Win10, no WSL 2 rodando Ubuntu 20, instalei o sshd rodando em uma porta diferente da 22, ou seja, 2222. Ao firewall eu adicionei uma regra de entrada para a porta TCP 2222.
No prompt de comando do Windows, ssh -p 2222 127.0.0.1
funciona. O mesmo acontece ssh -p 2222 xxx.xxx.xxx.xxx
com o quad pontilhado relatado pela WSL ifconfig
.
A partir do prompt de comando do Windows ( não WSL), ipconfig
relata 192.168.1.yyy
, seu endereço no meu roteador. Por meio desse endereço, o Windows alcança e é alcançado por outros hosts 192.168.1 nesse roteador (Windows, Mac, Linux; ping, http, discos de montagem, ssh somente do WSL).
No prompt de comando do Windows, ssh -p 2222 192.168.1.yyy
falha com Connection refused
. Como posso fazer isso funcionar?
O PuTTY 0.74 se comporta da mesma forma que o ssh do prompt de comando do Windows.
ssh -v -v -v
adiciona diagnósticos possivelmente úteis:
debug1: Connecting to 192.168.1.100 [192.168.1.yyy] port 2222.
debug3: finish_connect - ERROR: async io completed with error: 10061, io:000002E243EDC460
debug1: connect to address 192.168.1.yyy port 2222: Connection refused
Se em sshd_config eu restringir ListenAddress para
192.168.1.yyy:2222
, os outros ssh's de entrada falharão conforme o esperado. Portanto, o que precisa ser configurado pode não ser o ssh, mas o próprio WSL.ifconfig -a
não menciona nenhum 192.168.Contexto: este é um trampolim para habilitar o ssh no WSL de outros hosts do roteador. Por enquanto, o /etc/ssh/sshd_config do WSL usa PasswordAuthentication; Mais tarde, mudarei isso para PubKeyAuthentication.
Spam de uma organização bem conhecida que vende grandes quantidades de imitações de tudo, de drones a roombas, usa domínios aleatórios nos campos
From:
, Message-ID:
, e , todos diferentes , sem sequer um trailing comum .
(O e-mail não spam tende a compartilhar nomes de domínio para pelo menos e .)Reply-To:
xyz.com
Message-ID:
Reply-To:
Uma receita em ~/.procmailrc pode detectar esse spam e encaminhá-lo para uma pasta de spam?
Regexes extravagantes com grupos de captura nomeados?
Algo sobre encadear ações com 'A' ou 'a'?
Chamar o procmail recursivamente, conforme sugerido por sua página de manual?
Um 'filtro' para passar o cabeçalho do email para um script escrito em uma linguagem com melhor processamento de string?
Um exemplo: namebrandwigs.com, mysuburbankitchen.com, aliyun.com.
From [email protected] Wed Mar 17 09:27:54 2021
Return-Path: <[email protected]>
X-Original-To: ---
Delivered-To: ---
Received: from mysuburbankitchen.com (unknown [5.253.84.113])
by --- (Postfix) with ESMTP id 332025E236
for <--->; Wed, 17 Mar 2021 09:27:53 -0500 (CDT)
To: ---
Subject: drone with new features
Message-ID: <[email protected]>
Date: Wed, 17 Mar 2021 08:13:03 +0100
From: "Jake Allen" <[email protected]>
Reply-To: [email protected]
MIME-Version: 1.0
X-Mailer-Sent-By: 1
Content-Type: text/html; charset="UTF-8"
Content-Transfer-Encoding: 8bit
Status: RO
<html>
<head>
</head>
<body>
<span style="display: block; text-align: left;"><span style="display:
block; text-align: left;">Hi,<br /><br /><span>Hope all is well.</span><br
/>We are contacting you today to let you know that we have got the
following new drone, ready to ship to worldwide customers.<span><span><br
/><br /></span></span></span></span><span style="display: block;
text-align: left;"><span style="display: block; text-align:
left;"></span></span><span style="display: block; text-align: left;"><span
style="display: block; text-align: left;"><span style="display: block;
text-align: left;"></span></span></span><span style="display: block;
text-align: left;">Explore new places and amp up your videography skills
with the our F9 4K HD camera drone.
...
Outros exemplos, formatados de forma semelhante, mas sem texto sinalizado no corpo da mensagem:
- uma cadeira de massagem de couro da momentumwatch.com / musicalley.com
- um roomba de mtndewkid.com/myhondafitev.com/constructiongear.com
- um projetor de vídeo de hairrehablondon.com / hairocean.com / hotmail.com
O comando shell make -j
executa os comandos de um Makefile em paralelo, o que é útil em CPUs multicore modernas. Esse paralelismo pode ser invocado de dentro de um Makefile?
Do manual do Gnu make, meu melhor palpite é usar o Makefile principal apenas como um wrapper, que passa -j
para um sub-make que faz o trabalho real. Mas talvez haja alguma variável de ambiente ou arquivo de ponto ou variável interna ou outra maneira de fazer isso.
Não há problema em limitar o número de empregos, por exemplo. -j $$(nproc)
.
Provavelmente Linux, mas não necessariamente.
(Adicionar algo como alias make='make -j'
~/.bashrc é muito perigoso; a decisão sobre paralelizar deve ser por Makefile, não por usuário.)
Sem editar e recompilar ffmpeg
a partir da fonte, como ocultar algumas das muitas linhas que imprime quando inicia a codificação, sem também ocultar sua barra de progresso que atualiza a cada segundo durante a codificação?
Barra de progresso:
frame=14759 fps=3226 … bitrate=8509.2kbits/s speed= 108x
Comando típico:
ffmpeg -hide_banner in.mov out.mp4
Ruído típico: uma dúzia ou mais de linhas como
Duration: 00:59:19.45, start: 0.257200, bitrate: 9623 kb/s
Stream #0:0[0x1bf]: Data: dvd_nav_packet
Stream #0:1[0x1e0]: Video: mpeg2video (Main), yuv420p(tv, smpte170m, bottom first), 720x480 [SAR 8:9 DAR 4:3], 29.97 fps, 29.97 tbr, 90k tbn, 59.94 tbc
Stream #0:2[0xa0]: Audio: pcm_dvd, 48000 Hz, stereo, s16, 1536 kb/s
Stream mapping:
Stream #0:1 -> #0:0 (copy)
Stream #0:2 -> #0:1 (pcm_dvd (native) -> ac3 (native))
Essas tentativas ocultam Stream
, mas também ocultam a barra de progresso (porque ela nunca atinge egrep
, por causa de \r
em vez de \n
?):
stdbuf -i0 -o0 -e0 ( ffmpeg … 2>&1 ) | grep -v Stream
unbuffer ffmpeg … | unbuffer grep -v Stream
Substituir grep por algo inerentemente sem buffer?
sed -u /Stream/d
oculta a barra de progresso também.
Relacionado: https://stackoverflow.com/questions/3465619/how-to-make-output-of-any-shell-command-unbuffered
Abordagem possível realmente complicada: https://unix.stackexchange.com/questions/330636/how-to-grep-in-real-time-an-output-containing-a-progress-bar
for f in "$@"
do
echo # I'd like to skip this the first time
echo $f
print_info_about $f
done
Este fragmento de um script bash aceita alguns nomes de arquivos e imprime cada um deles e algumas informações sobre eles, com uma linha em branco entre eles.
Qual é uma maneira limpa de evitar a linha em branco inicial desnecessária?
De forma equivalente, qual é uma maneira limpa de echo
após cada iteração, exceto a última?
Mais limpo do que dividir o primeiro (ou último) item $@
e usar uma chamada extra para print_info_about
.
Idealmente, tão limpo quanto Ruby acumulando tudo em uma matriz de strings e depois .join("\n")
.
Um host Win10, com WSL 2 executando o Ubuntu 18.04, possui um SSD montado como caminho de unidade (C:) \2
no Gerenciamento de disco. (Isso foi para "crescer" rapidamente meu C: SSD para software que insiste em ser instalado em C: em vez do D: HDD mais espaçoso, mas mais lento.)
Mas no shell do Ubuntu, em /mnt/c
, não consigo cd 2
, ls 2
, etc. A maioria dos comandos falha com
cannot read symbolic link '2': Input/output error
.
Os comandos WSL podem acessar o restante de /mnt/ce /mnt/d.
Claro que o Windows pode acessar C: e C:\2 e D:.
Como posso obter acesso ao WSL /mnt/c/2
?
( subst f: c:\2
faz f:
, um pouco diferente no powershell do que cmd.exe, mas em nenhum dos casos o WSL mostra um /mnt/f correspondente.)
Eu tenho um vídeo antigo (feito por um Casio Exilim EX-Z40, se for o caso), cujo fluxo de áudio ffprobe
é relatado como pcm_u8, 8000 Hz, mono, u8
.
Eu gostaria de transcodificá-lo em algo moderno.
A transcodificação com os padrões do FFmpeg falha:
libfaac não suporta este formato de saída!
Então, presumivelmente, o libfaac não suporta 8 kHz, porque -c:a copy
funciona.
Quais codificadores suportam uma taxa de amostragem de 8 kHz? A lista encontrada aqui mal menciona as taxas de amostragem.
Posso fazer um script de algo que tente todos os codecs instalados, de…
ffmpeg -codecs | grep EA`
…para ver diretamente quais funcionam?
Enquanto estava no meu console, apertei acidentalmente Ctrl+Alt+F2, que substituiu minhas telas por um prompt de login em modo de texto, como deveria. A partir desse shell, vejo isso /usr/bin/X
e meus shells e processos anteriores ainda estão em execução.
Para mostrar mais uma vez minha sessão do X-windows, que comecei há muito tempo da maneira usual logo após a inicialização, quais teclas devo pressionar (ou qual sinal devo enviar, para onde)?