AskOverflow.Dev

AskOverflow.Dev Logo AskOverflow.Dev Logo

AskOverflow.Dev Navigation

  • Início
  • system&network
  • Ubuntu
  • Unix
  • DBA
  • Computer
  • Coding
  • LangChain

Mobile menu

Close
  • Início
  • system&network
    • Recentes
    • Highest score
    • tags
  • Ubuntu
    • Recentes
    • Highest score
    • tags
  • Unix
    • Recentes
    • tags
  • DBA
    • Recentes
    • tags
  • Computer
    • Recentes
    • tags
  • Coding
    • Recentes
    • tags
Início / user-307523

WinEunuuchs2Unix's questions

Martin Hope
WinEunuuchs2Unix
Asked: 2024-10-22 10:06:45 +0800 CST

Totalize e calcule a média de uma coluna de números no terminal rapidamente

  • 11

Esta é uma pergunta auto-respondida. Eu já escrevi uma resposta, mas, se você tiver uma melhor, por favor, poste.

Estou desenvolvendo um programa e ele está imprimindo alguns resultados de tempo:

$ homa.py
Creating instance rd = NetworkInfo(): 0.0071680546
Creating instance rd = NetworkInfo(): 0.0083100796
Creating instance rd = NetworkInfo(): 0.0121581554
Creating instance rd = NetworkInfo(): 0.0205171108
Creating instance rd = NetworkInfo(): 0.0067570210
Creating instance rd = NetworkInfo(): 0.0215399265
Creating instance rd = NetworkInfo(): 0.0170729160
Creating instance rd = NetworkInfo(): 0.0088560581
Creating instance rd = NetworkInfo(): 0.0079369545
Creating instance rd = NetworkInfo(): 0.0091099739
Creating instance rd = NetworkInfo(): 0.0085971355
Creating instance rd = NetworkInfo(): 0.0137989521
Creating instance rd = NetworkInfo(): 0.0081419945
Creating instance rd = NetworkInfo(): 0.0090279579
Creating instance rd = NetworkInfo(): 0.0070800781
Creating instance rd = NetworkInfo(): 0.0079300404
^C
homa.py refresh() closed by SIGTERM

É muito difícil dar uma olhada na lista e obter um tempo médio.

Como posso obter rapidamente o tempo médio?

command-line
  • 4 respostas
  • 804 Views
Martin Hope
WinEunuuchs2Unix
Asked: 2022-05-16 09:28:47 +0800 CST

12 de maio de 2022 pyCharm roda do mouse rolando dolorosamente devagar

  • 1

Descobri a atualização do pyCharm em 2002-05-12 (versão 2022.1.1) que afetou severamente a rolagem da roda do mouse.

Como faço para voltar para a versão anterior?

mouse-scroll
  • 1 respostas
  • 59 Views
Martin Hope
WinEunuuchs2Unix
Asked: 2022-02-13 10:57:35 +0800 CST

Como alterar a ordem de classificação `lsblk`?

  • 3

Alterar lsblkordem de classificação

lsblkclassifica as partições em uma ordem difícil de seguir. Um método de classificá-lo sem ter que escrever um script bash ou um script python seria a primeira escolha.

Uma pergunta semelhante foi feita em Unix e Linux:

  • saída lsblk não classificada

No entanto, a resposta para usar o -x NAMEparâmetro para classificação faz com que o recuo da árvore desapareça.

Ordem de classificação atual

É assim que lsblkaparece agora:

$ lsdrv

NAME         FSTYPE   LABEL            MOUNTPOINT                    SIZE MODEL
nvme0n1                                                              477G Samsung SSD 960 PRO 512GB               
├─nvme0n1p9  swap                      [SWAP]                        7.9G 
├─nvme0n1p7  ext4     Old_Ubuntu_16.04 /mnt/old                     23.1G 
├─nvme0n1p5  ntfs                                                    859M 
├─nvme0n1p3                                                           16M 
├─nvme0n1p1  ntfs                                                    450M 
├─nvme0n1p8  ntfs     Shared_WSL+Linux /mnt/e                          9G 
├─nvme0n1p10 ext4     Ubuntu_18.04     /mnt/clone                   27.2G 
├─nvme0n1p6  ext4     New_Ubuntu_16.04 /                            45.1G 
├─nvme0n1p4  ntfs     NVMe_Win10       /mnt/c                      363.2G 
└─nvme0n1p2  vfat                      /boot/efi                      99M 
mmcblk0                                                            119.1G 
└─mmcblk0p1  vfat     SANDISK128       /media/rick/SANDISK128      119.1G 
sr0                                                                 1024M DVD+/-RW DW316  
sda                                                                931.5G HGST HTS721010A9
├─sda4       ntfs     WINRETOOLS                                     450M 
├─sda2                                                               128M 
├─sda5       ntfs     Image                                         11.4G 
├─sda3       ntfs     HGST_Win10       /mnt/d                        919G 
└─sda1       vfat     ESP                                            500M 

Ordem de classificação proposta

É assim que lsblkdeve ser classificado:

$ lsdrv

NAME         FSTYPE   LABEL            MOUNTPOINT                    SIZE MODEL
nvme0n1                                                              477G Samsung SSD 960 PRO 512GB               
├─nvme0n1p1  ntfs                                                    450M 
├─nvme0n1p2  vfat                      /boot/efi                      99M 
├─nvme0n1p3                                                           16M 
├─nvme0n1p4  ntfs     NVMe_Win10       /mnt/c                      363.2G 
├─nvme0n1p5  ntfs                                                    859M 
├─nvme0n1p6  ext4     New_Ubuntu_16.04 /                            45.1G 
├─nvme0n1p7  ext4     Old_Ubuntu_16.04 /mnt/old                     23.1G 
├─nvme0n1p8  ntfs     Shared_WSL+Linux /mnt/e                          9G 
├─nvme0n1p9  swap                      [SWAP]                        7.9G 
└─nvme0n1p10 ext4     Ubuntu_18.04     /mnt/clone                   27.2G 
mmcblk0                                                            119.1G 
└─mmcblk0p1  vfat     SANDISK128       /media/rick/SANDISK128      119.1G 
sr0                                                                 1024M DVD+/-RW DW316  
sda                                                                931.5G HGST HTS721010A9
├─sda1       vfat     ESP                                            500M 
├─sda2                                                               128M 
├─sda3       ntfs     HGST_Win10       /mnt/d                        919G 
├─sda4       ntfs     WINRETOOLS                                     450M 
└─sda5       ntfs     Image                                         11.4G 

Nota: lsdrv é um alias definido em ~/.bashrc:

$ alias lsdrv

alias lsdrv='lsblk -o NAME,FSTYPE,LABEL,MOUNTPOINT,SIZE,MODEL |egrep -v "^loop"'

Resumo

As complexidades da alteração da ordem de classificação são:

  • Apenas partições com caracteres de desenho de linha ├─e └─são classificadas em suas unidades.
  • Depois de classificar as partições, a última partição pode precisar ser ├─substituída por └─.
  • Depois de classificar as partições, a primeira partição para a penúltima partição pode precisar ser └─substituída por ├─.
  • O velho "calcanhar de Aquiles" de classificar os lugares 10depois de , 1 EG 1 depois . Realmente deve aparecer antes .102 9 10

A ordem de classificação de lsblktem sido um espinho por anos. Espero que alguém tenha uma solução simples com utilitários GNU como: awk, sed, grep, uniqe/ou sort, etc.

partitioning
  • 1 respostas
  • 259 Views
Martin Hope
WinEunuuchs2Unix
Asked: 2021-08-11 17:29:10 +0800 CST

Meu backup diário travou, como posso executar novamente o cron diariamente?

  • 5

Meu backup diário travou porque existia um arquivo "ruim" de 30 MB, o que me fez exceder o limite de backup diário de 25 MB:

-rw-rw-r-- rick/rick  29018177 2021-08-09 23:07 .config/mserve/ipc.pickle

Eu removi o arquivo, mas como posso chamar o cron para executar os /etc/cron.dailytrabalhos novamente?

cron
  • 1 respostas
  • 451 Views
Martin Hope
WinEunuuchs2Unix
Asked: 2021-02-02 07:57:57 +0800 CST

De repente, Ethernet e WiFi não coexistirão

  • 2

Eu tenho a mesma configuração há anos no Ubuntu 16.04 LTS. Esta manhã, de repente, não havia acesso à Internet, a menos que eu desliguei o WiFi. Só consigo acessar com WiFi ou Ethernet desligados.

Reiniciei o laptop várias vezes, sudo apt update && sudo apt upgradeexecutei , reiniciei o roteador e observei a configuração do roteador:

shaw router.png

Destaca-se a configuração "DHCP-Reserved" para a placa WiFi. Todos os meus endereços IP são estáticos:

$ cat /etc/hosts

127.0.0.1   localhost
127.0.1.1   alien

# Add to router static IP address list
192.168.0.10    alien  AW 17R3 WiFi                   9c:b6:d0:10:37:f7
192.168.0.12    alien  AW 17R3 Ethernet               28:f1:0e:2a:1a:ed
192.168.0.11    phone  Moto E4 Plus                   d0:77:14:c8:bc:e5
192.168.0.13    dell   Inspiron 17R-SE-7720 Ethernet  5c:f9:dd:5c:9c:53
192.168.0.14    dell   Inspiron 17R-SE-7720 WiFi      60:6c:66:86:de:bd
192.168.0.15    hs100  Sony TV Wall Light             50:d4:f7:eb:41:35
192.168.0.16    android-47cdabb50f83a5ee  Sony Bravia TV KBL 50W800C
192.168.0.17    hs103  Toshiba 32" TV                 18:4F:32:8D:AA:97

# The following lines are desirable for IPv6 capable hosts
::1     ip6-localhost ip6-loopback
fe00::0 ip6-localnet
ff00::0 ip6-mcastprefix
ff02::1 ip6-allnodes
ff02::2 ip6-allrouters

Placas Ethernet e Wi-Fi:

$ lspci -v | grep -i net -A6
3b:00.0 Ethernet controller: Qualcomm Atheros Killer E2400 Gigabit Ethernet Controller (rev 10)
    Subsystem: Device 0707:2400
    Flags: bus master, fast devsel, latency 0, IRQ 16
    Memory at dd600000 (64-bit, non-prefetchable) [size=256K]
    I/O ports at d000 [size=128]
    Capabilities: <access denied>
    Kernel driver in use: alx
--
3c:00.0 Network controller: Qualcomm Atheros QCA6174 802.11ac Wireless Network Adapter (rev 32)
    Subsystem: Bigfoot Networks, Inc. QCA6174 802.11ac Wireless Network Adapter
    Flags: bus master, fast devsel, latency 0, IRQ 137
    Memory at dd200000 (64-bit, non-prefetchable) [size=2M]
    Capabilities: <access denied>
    Kernel driver in use: ath10k_pci
    Kernel modules: ath10k_pci

Não tenho certeza se o roteamento é relevante, mas aqui está:

$ route -n

Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
0.0.0.0         192.168.0.1     0.0.0.0         UG    100    0        0 enp59s0
0.0.0.0         192.168.0.1     0.0.0.0         UG    600    0        0 wlp60s0
169.254.0.0     0.0.0.0         255.255.0.0     U     1000   0        0 enp59s0
192.168.0.0     0.0.0.0         255.255.255.0   U     100    0        0 enp59s0
192.168.0.0     0.0.0.0         255.255.255.0   U     600    0        0 wlp60s0

Editar 2 de fevereiro de 2021

O problema é que a pesquisa de DNS não funciona quando Ethernet e WiFi estão conectados. A Internet está disponível através de endereçamento IP direto. Olhando para o roteador quando Wifi e Ethernet estão conectados, os valores parecem estar mudando?

computadores clientes do roteador shaw.png

Então agora eu vou descer a toca do coelho DNS...

networking
  • 1 respostas
  • 88 Views
Martin Hope
WinEunuuchs2Unix
Asked: 2020-12-21 14:17:01 +0800 CST

Suporte ao Ubuntu 16.04 após 2021 até 2024

  • 1

Gostaria de saber as etapas exatas que precisam ser seguidas para obter suporte ao Ubuntu 16.04 LTS após abril de 2021 até o ano de 2024 .

Eu li sobre Extended Security Maintenance (ESM) e isso parece uma opção viável.

Alguém pode explicar as etapas exatas que precisam ser tomadas e quais os custos incorridos, se houver?

support 16.04 esm
  • 1 respostas
  • 422 Views
Martin Hope
WinEunuuchs2Unix
Asked: 2020-06-23 18:27:53 +0800 CST

Quais são todos os comandos de uma letra do Ubuntu?

  • 10

Eu me deparei com este comando durante a configuração ssh:

$ w

 20:01:30 up 6 days,  2:20,  3 users,  load average: 0.06, 0.11, 0.10
USER     TTY      FROM             LOGIN@   IDLE   JCPU   PCPU WHAT
rick     tty7     :0               16Jun20  6days 16:51   2.37s /sbin/upstart --user
rick     pts/21   192.168.0.12     18:44    1:14m  0.19s  0.00s sleep 60
rick     pts/22   192.168.0.12     18:45    0.00s  0.44s  0.01s w

O que me levou a imaginar quais são todos os comandos de uma letra no Ubuntu. Não encontrei uma referência exata, mas encontrei este site:

  • Um índice AZ da linha de comando do Linux: bash + utilitários.

Aqui o wcomando é listado junto com:

  • .o comando para originar um arquivo que eu usei
  • vé um comando não instalado no Ubuntu. Diz-se que é equivalente a ls -l -b. Isso, por sua vez, é semelhante à llconfiguração do alias pelo Ubuntu, exceto que os arquivos que começam com .(incluindo o infame .e ..) não são incluídos.

Existem outros comandos de uma letra instalados no Ubuntu por padrão?

command-line
  • 1 respostas
  • 3700 Views
Martin Hope
WinEunuuchs2Unix
Asked: 2020-06-19 17:55:05 +0800 CST

Impedir o desligamento do host quando conectado remotamente

  • 0

Eu tenho um laptop que estou configurando com servidor aberto SSH. Funciona muito bem depois que eu o desperto com o pacote mágico e faço o login com:

ssh user@host -Y

O problema é que o laptop foi projetado para deixar a tela em branco após cinco minutos e suspender após 20 minutos de inatividade.

Como posso fazer com que um script (ou pacote enlatado) envie sinais falsos para o servidor como se um usuário estivesse digitando no sistema? Dessa forma, o sistema host não será suspenso após 20 minutos, a menos que haja 20 minutos de inatividade no cliente.

Ao simular a atividade do usuário, gostaria que a tela em branco fosse honrada como se não houvesse atividade do usuário no host. Eu só não quero que o laptop seja suspenso quando conectado remotamente.

server ssh suspend client
  • 1 respostas
  • 672 Views
Martin Hope
WinEunuuchs2Unix
Asked: 2019-11-28 17:56:29 +0800 CST

Quando o xrandr versão 1.5.1 estará disponível no Ubuntu?

  • 7

Eu acho que isso é mais uma questão de onde eu vou descobrir quando a xrandrversão 1.5.1será publicada no Ubuntu? Já está disponível no Arch Linux e foi lançado em agosto de 2019. Há um bug de 2010 que quero corrigir.

A versão atual do Ubuntu 16.04.6 LTS é:

$ xrandr --version
xrandr program version       1.5.0
Server reports RandR version 1.5

Eu não sou bem versado no assunto, mas eu poderia simplesmente obter 1.5.1o código-fonte e compilá-lo? Ou um aplicativo de missão crítica, como xrandrnunca deve ser compilado a partir da fonte?


TL;DR Por que é importante

Todos podem experimentar esses pequenos testes curtos em sua plataforma para ver a importância da xrandrversão e do bug de gama.

A versão atual do Ubuntu tem o bug que existe há 9 anos:

$ xrandr --version
xrandr program version       1.5.0
Server reports RandR version 1.5

O problema básico é xrandrrelatar os valores de gama errados:

$ xrandr --verbose | grep ^DP-1-1 -A5
DP-1-1 connected 3840x2160+1920+0 (0xa5) normal (normal left inverted right x axis y axis) 1600mm x 900mm
    Identifier: 0x43
    Timestamp:  538179391
    Subpixel:   unknown
    Gamma:      1.0:1.1:1.3
    Brightness: 0.63

Meu aplicativo "semelhante ao redshift" definiu gama para Red = 1.0, Green = .88e Blue = , .77mas RGB é relatado incorretamente como 1.0:1.1:1.3. Agora, imagens que queremos aumentar o brilho para 0,65. Se não alterarmos a gama ao mesmo tempo, as configurações existentes para gama serão redefinidas para 1:1:1. Então passamos o que achamos que são os valores atuais:

$ xrandr --output DP-1-1 --brightness .65 --gamma 1.0:1.1:1.3

Baixo e eis que a tela fica super azulada-esverdeada e mata nossas configurações noturnas para um tom avermelhado. Quando verificamos as configurações atuais novamente, descobrimos que os valores estão invertidos novamente:

$ xrandr --verbose | grep ^DP-1-1 -A5
DP-1-1 connected 3840x2160+1920+0 (0xa5) normal (normal left inverted right x axis y axis) 1600mm x 900mm
    Identifier: 0x43
    Timestamp:  541629314
    Subpixel:   unknown
    Gamma:      1.0:0.91:0.77
    Brightness: 0.65

Portanto, independentemente do valor do xrandr --verboserelatório, sempre temos que usar 1 / gammapara obter gama real nos canais Vermelho, Verde e Azul. Após corrigir nosso código, temos que fazer um teste de versão 1.5.1para não corrigir nosso código e usar os valores de gama retornados. Assumindo que o bug foi corrigido na versão 1.5.1que ainda não compilei e testei.

xrandr
  • 3 respostas
  • 2716 Views
Martin Hope
WinEunuuchs2Unix
Asked: 2019-11-10 08:03:07 +0800 CST

Onde obter o código-fonte do Gnome Night Light?

  • 1

Eu tinha pensado em fazer essa pergunta no Stackoverflow, mas todas as referências "Night Light" são para o Windows 10 Night Light. Pena que os desenvolvedores da Microsoft e do Gnome não tiraram a sorte para quem chamaria seu aplicativo de "Blueshift" ou qualquer outra coisa.

Preâmbulo à parte... Como obtenho o código fonte do Night Light (versão Gnome)? O código-fonte para Mutter e dconf/gsettings também seria necessário?

Entendo que existem diferentes versões 3.34.1, 3.35.1 e 3.36 beta:

  • Mutter 3.35.1 do GNOME corrige o modo de luz noturna em Wayland
gnome source-code mutter dconf night-light
  • 2 respostas
  • 337 Views
Martin Hope
WinEunuuchs2Unix
Asked: 2019-10-05 17:17:51 +0800 CST

Como montar o armazenamento externo do Android por WiFi em vez de USB

  • 2

Fica esta pergunta:

  • Como acessar os arquivos do meu Android usando Wi-Fi no Ubuntu?

que tem muitas respostas. No corpo da pergunta, o OP pergunta como fazer mounto sistema de arquivos do Android por WiFi, que é o que eu quero fazer. No entanto, nem uma única resposta contém o mountcomando.

Como faço para mountarmazenar o armazenamento externo do meu telefone por WiFi para que eu possa usar o lscomando e obter os resultados especificamente com o último horário de acesso para cada arquivo?

Em vez de imagens GUI "bonitas", prefiro CLI com o comando mountpara uma partição como /phone. Então um comando como ls /phonerealmente funciona.

Copiar e colar arquivos na GUI não é necessário. lsApenas o comando simples . O método mais fácil é o objetivo.

Responder aos comentários

Existem várias ferramentas de cliente FTP que você pode usar no Ubuntu. No entanto, eles vêm com seu próprio conjunto de comandos do tipo shell/bash executados dentro de um interpretador. Eu gostaria de usar comandos bash/shell regulares e chamar o script de /etc/cron.daily.

Todas as manhãs, um trabalho Cron será automaticamente ligado mountao telefone. Em seguida , pesquise o horário do último acesso para milhares de arquivos. Em seguida, atualize o array bash com os últimos quatro tempos de acesso e umounto telefone.

Não deve haver nenhuma entrada do usuário além de retomar o laptop todas as manhãs, o que já foi feito para os outros trabalhos de /etc/cron.dailyqualquer maneira.

android command-line wireless mount usb
  • 2 respostas
  • 1908 Views
Martin Hope
WinEunuuchs2Unix
Asked: 2019-08-27 16:51:14 +0800 CST

Como passar 2>/dev/null como uma variável?

  • 16

Eu tenho esse código que funciona:

# Hide irrelevant errors so chrome doesn't email us in cron
if [[ $fCron == true ]] ; then
    google-chrome --headless --disable-gpu --dump-dom \
        "$RobWebAddress" > "$DownloadName" 2>/dev/null
else
    # Get silly error messages when running from terminal
    google-chrome --headless --disable-gpu --dump-dom \
        "$RobWebAddress" > "$DownloadName"
fi

Se eu tentar encurtar assim:

# Hide irrelevant errors so chrome doesn't email us in cron
local HideErrors
[[ $fCron == true ]] && HideErrors="2>/dev/null"

google-chrome --headless --disable-gpu --dump-dom \
    "$RobWebAddress" > "$DownloadName" "$HideErrors"

Recebo mensagens de erro:

[0826/043058.634775:ERROR:headless_shell.cc(597)] Open multiple tabs is only supported when remote debugging is enabled.
[0826/043058.672587:ERROR:headless_shell.cc(597)] Open multiple tabs is only supported when remote debugging is enabled.
[0826/043058.711640:ERROR:headless_shell.cc(597)] Open multiple tabs is only supported when remote debugging is enabled.
(... SNIP ...)

Por que um argumento codificado funciona, mas não um argumento como variável?


Edição 2:

Atualmente, obtive sucesso com a sugestão alternativa da segunda resposta:

# Redirect errors when cron is used to /dev/null to reduce emails
ErrorPipe=/dev/stderr
[[ $fCron == true ]] && ErrorPipe=/dev/null

google-chrome --headless --disable-gpu --dump-dom \
                "$RobWebAddress" > "$DownloadName" 2>"$ErrorPipe"

Editar 1:

Com base na primeira resposta, devo salientar que o cabeçalho do programa já contém:

[[ $fCron != true ]] &&
    exec 2> >(grep -v 'GtkDialog mapped without a transient parent' >&2)
command-line bash redirect
  • 3 respostas
  • 5349 Views
Martin Hope
WinEunuuchs2Unix
Asked: 2019-08-21 17:16:35 +0800 CST

Não é possível grep o preço na página da Web baixada

  • 0

Usando wgeteu baixei esta página da web:

Site Walmart.png

Com o comando:

RobWebsiteAddress="https://www.walmart.ca/en/ip/Dispenser-Set-Tumbler-Organizer-Bathroom-Bin-Holder-Bathroom-Containers-Soap-Set-Accessories-Travel-6Pcs-Accessory-Ejoyous-Dish-Toothbrush/PRD4406MV3EZF75"
DownloadName="Ejoyous1"
wget -O- -q --user-agent=AGENT "$RobWebAddress" > "$DownloadName"

Quando tento abrir o arquivo geditele fica louco.

Quando eu uso:

grep -i 23.31 Ejoyous1 | wc
      0       0       0

O preço não foi encontrado. Se eu usar grepa palavra price, recebo uma longa linha de 146.329 caracteres retornados, o que provavelmente é o que geditenlouqueceu:

$ grep -i price Ejoyous1 | wc
      1    6292  146329

Dentro do arquivo de .5 MB há algumas dicas:

$ grep -i necolas Ejoyous1
/*! normalize.css v8.0.0 | MIT License | github.com/necolas/normalize.css */

Como você pode ver, isso é do site do Walmart. Não tenho nenhum problema em obter os preços da Costco e os preços da Ikea simplesmente baixando a página da Web wgete pressionando-a. Também não tenho problemas para visualizar os arquivos baixados do Costco ou Ikea com gedit.

Como posso interpretar esta linguagem se for um derivado do HTML? Quais ferramentas devo usar? Alguma pista para entrar no caminho certo?

websites css html
  • 2 respostas
  • 347 Views
Martin Hope
WinEunuuchs2Unix
Asked: 2019-07-31 17:13:08 +0800 CST

Centro de controle de unidade de dependência não atendida

  • 0

Estou tentando corajosamente avançar para o "apt-world" e recebi esses erros hoje à noite testando a atualização de 16.04 para 19.04 em um clone (é... bem... complicado...):

The following packages have unmet dependencies:
 indicator-bluetooth : Depends: unity-control-center but it is not going to be installed or
                                gnome-control-center but it is not going to be installed or
                                ubuntu-system-settings but it is not installable
 libdouble-conversion1v5 : Conflicts: libdouble-conversion1 but 3.1.0-2 is to be installed
                           Breaks: libdouble-conversion1 but 3.1.0-2 is to be installed
 libqt5dbus5 : Depends: qtbase-abi-5-5-1
 libqt5network5 : Depends: qtbase-abi-5-5-1
E: Error, pkgProblemResolver::Resolve generated breaks, this may be caused by held packages.

Alguém sabe como resolver esses erros ou quais informações adicionais posso fornecer para ajudar a resolvê-los?

A atualização de 16.04 para 19.04 é por script, para que eu possa instalar pacotes antecipadamente, se isso ajudar. Eu reclonei 16.04 e executei o script cinco vezes para resolver os outros bugs e agora quase posso ver a luz no fim do túnel.


Responder aos comentários

Atualmente, apenas o Unity Desktop é instalado e convertido por atualização. Após a atualização bem-sucedida, pretendo instalar o Gnome Desktop e possivelmente o Wayland.

Vejo que mesmo antes da atualização há um problema:

$ sudo dpkg -P libdouble-conversion1v5

dpkg: dependency problems prevent removal of libdouble-conversion1v5:amd64:
 libqt5qml5:amd64 depends on libdouble-conversion1v5 (>= 2.0.0).

dpkg: error processing package libdouble-conversion1v5:amd64 (--purge):
 dependency problems - not removing
Errors were encountered while processing:
 libdouble-conversion1v5:amd64

O outro item pediu:

$ apt list --installed | grep hw

WARNING: apt does not have a stable CLI interface. Use with caution in scripts.

hwdata/xenial-updates,xenial-updates,now 0.267-1ubuntu2 all [installed]
linux-generic-hwe-16.04/xenial-updates,xenial-security,now 4.15.0.55.76 amd64 [installed]
linux-headers-generic-hwe-16.04/xenial-updates,xenial-security,now 4.15.0.55.76 amd64 [installed]
linux-hwe-tools-4.15.0-54/xenial-updates,xenial-security,now 4.15.0-54.58~16.04.1 amd64 [installed,automatic]
linux-hwe-tools-4.15.0-55/xenial-updates,xenial-security,now 4.15.0-55.60~16.04.2 amd64 [installed,automatic]
linux-image-generic-hwe-16.04/xenial-updates,xenial-security,now 4.15.0.55.76 amd64 [installed,automatic]
linux-signed-generic-hwe-16.04/xenial-updates,xenial-security,now 4.15.0.55.76 amd64 [installed]
linux-signed-image-generic-hwe-16.04/xenial-updates,xenial-security,now 4.15.0.55.76 amd64 [installed]
linux-tools-generic-hwe-16.04/xenial-updates,xenial-security,now 4.15.0.55.76 amd64 [installed,automatic]
lshw/xenial-updates,now 02.17-1.1ubuntu3.6 amd64 [installed]
xserver-xorg-core-hwe-16.04/xenial-updates,xenial-security,now 2:1.19.6-1ubuntu4.1~16.04.2 amd64 [installed]
xserver-xorg-hwe-16.04/xenial-updates,now 1:7.7+16ubuntu3~16.04.1 amd64 [installed]
xserver-xorg-input-all-hwe-16.04/xenial-updates,now 1:7.7+16ubuntu3~16.04.1 amd64 [installed]
xserver-xorg-input-evdev-hwe-16.04/xenial-updates,now 1:2.10.5-1ubuntu1~16.04.1 amd64 [installed]
xserver-xorg-input-synaptics-hwe-16.04/xenial-updates,now 1.9.0-1ubuntu1~16.04.1 amd64 [installed]
xserver-xorg-input-wacom-hwe-16.04/xenial-updates,now 1:0.34.0-0ubuntu2~16.04.1 amd64 [installed]
xserver-xorg-legacy-hwe-16.04/xenial-updates,xenial-security,now 2:1.19.6-1ubuntu4.1~16.04.2 amd64 [installed,automatic]
xserver-xorg-video-all-hwe-16.04/xenial-updates,now 1:7.7+16ubuntu3~16.04.1 amd64 [installed]
xserver-xorg-video-amdgpu-hwe-16.04/xenial-updates,now 18.0.1-1~16.04.1 amd64 [installed]
xserver-xorg-video-ati-hwe-16.04/xenial-updates,now 1:18.0.1-1~16.04.1 amd64 [installed]
xserver-xorg-video-fbdev-hwe-16.04/xenial-updates,now 1:0.4.4-1build6~16.04.1 amd64 [installed]
xserver-xorg-video-intel-hwe-16.04/xenial-updates,now 2:2.99.917+git20171229-1~16.04.1 amd64 [installed]
xserver-xorg-video-nouveau-hwe-16.04/xenial-updates,now 1:1.0.15-2~16.04.1 amd64 [installed]
xserver-xorg-video-qxl-hwe-16.04/xenial-updates,now 0.1.5-2build1~16.04.1 amd64 [installed]
xserver-xorg-video-radeon-hwe-16.04/xenial-updates,now 1:18.0.1-1~16.04.1 amd64 [installed]
xserver-xorg-video-vesa-hwe-16.04/xenial-updates,now 1:2.3.4-1build3~16.04.1 amd64 [installed]
xserver-xorg-video-vmware-hwe-16.04/xenial-updates,now 1:13.2.1-1build1~16.04.1 amd64 [installed]

O próximo passo

Eu posso estar sofrendo com pacotes sendo retidos:

  • "Os seguintes pacotes foram retidos:" Por que e como resolvo isso?

Como todos os três pacotes existem em 16.04 , eles simplesmente não estão sendo atualizados para 19.04 :

$ apt list unity-control-center
Listing... Done
unity-control-center/xenial-updates,now 15.04.0+16.04.20171130-0ubuntu1 amd64 [installed]
N: There is 1 additional version. Please use the '-a' switch to see it

$ apt list libqt5core5a
Listing... Done
libqt5core5a/xenial-updates,xenial-security,now 5.5.1+dfsg-16ubuntu7.6 amd64 [installed]
N: There is 1 additional version. Please use the '-a' switch to see it

$ apt list libdouble-conversion1v5
Listing... Done
libdouble-conversion1v5/xenial,now 2.0.1-3ubuntu2 amd64 [installed]

As respostas no link têm muitas sugestões, a primeira que vou tentar depois do trabalho é:

sudo apt-get --with-new-pkgs upgrade
upgrade dependencies apt 16.04 19.04
  • 1 respostas
  • 645 Views
Martin Hope
WinEunuuchs2Unix
Asked: 2019-06-26 16:44:37 +0800 CST

Copie o grupo de arquivos (Filename*) para backup (Filename*.bak)

  • 13

Fundo

No Linux você pode:

  • Liste um grupo de arquivos comls Filename*
  • Remova um grupo de arquivos comrm Filename*
  • Mova um grupo de arquivos commv Filename* /New/Directory
  • Mas você não pode copiar um grupo de arquivos com:cp Filename* *.bak

Altere o comando do Linux cppara copiar o grupo de arquivos

Eu tenho um grupo de arquivos que gostaria de copiar sem inserir os nomes um por um e usando o cpcomando:

$ ls gmail-meta3*
gmail-meta3                          gmail-meta3-REC-1558392194-26467821
gmail-meta3-LAB-1558392194-26467821  gmail-meta3-YAD-1558392194-26467821

Como posso usar algo como o antigo comando DOS copy gmail-meta3* *.bak?

Não quero digitar um comando semelhante quatro vezes:

cp gmail-meta3-LAB-1558392194-26467821 gmail-meta3-LAB-1558392194-26467821.bak

Estou procurando um script/função/aplicativo que aceite parâmetros para grupos de nomes de arquivos antigos e novos e não algo com nomes de arquivos codificados. Por exemplo, um usuário pode digitar:

copy gmail-meta3* *.bak

ou eles podem digitar:

copy gmail-meta3* save-*
command-line cp ms-dos
  • 8 respostas
  • 8060 Views
Martin Hope
WinEunuuchs2Unix
Asked: 2019-06-01 17:43:37 +0800 CST

O que o shellcheck aviso SC2129 “Considere usar { cmd1; cmd2; } >> arquivo em vez de redirecionamentos individuais.” significa?

  • 6

Eu tenho este shellcheckaviso que não consigo descobrir:

In /mnt/e/bin/iconic line 540:
            printf "FALSE|" >> "$IconsRaw"           # Select field number 1
            ^-- SC2129: Consider using { cmd1; cmd2; } >> file instead of individual redirects.

Percebi que muitos de nós aqui usamos shellcheck para corrigir nossos scripts bash / comandos shell, então espero que a pergunta esteja no tópico.


De acordo com os comentários postando a seção relevante do script bash:

    if [[ "$X" == "?" || "$Y" == "?" ]] ; then
        : # Bad X or Y offset usually "Link to Name.ext~" (backup name)
    else
        let i++
        printf "FALSE|" >> "$IconsRaw"           # Select field number 1
        printf "%s|" "$i" >> "$IconsRaw"         # 2
        printf "%s|" "${File##*/}" >> "$IconsRaw"
        printf "%s|" "$Linkless" >> "$IconsRaw"  # 4
        printf "%s|" "$Date" >> "$IconsRaw"      # 5
        printf "%s|" "$X" >> "$IconsRaw"         # 6
        echo   "$Y" >> "$IconsRaw"               # 7
    fi

Solução

Graças a respostas e comentários aceitos, aprendi que shellchecknão apenas detecta erros em seu código, mas também sugere melhorias de desempenho. Nesse caso, o nome do arquivo $IconsRawestava sendo aberto e fechado várias vezes com cada printfe echo.

O código bash mais eficiente:

    # X,Y screen coordinates invalid on backup files ending with "~"
    ! [[ "$X" == "?" || "$Y" == "?" ]] && { let i++; echo \
        "FALSE|$i|${File##*/}|$Linkless|$Date|$X|$Y" >> "$IconsRaw"; }
bash debugging output
  • 1 respostas
  • 861 Views
Martin Hope
WinEunuuchs2Unix
Asked: 2019-05-30 18:56:14 +0800 CST

xdotool como selecionar desktop enviar F5 e retornar?

  • 5

Parece simples; xdotoolseleciona a área de trabalho, simula F5o pressionamento de tecla e retorna o foco para a janela / programa de chamada.

Depois de pesquisar no Google, não parece mais simples.

Eu preciso fazer isso de bash / gnome-shell.

Alguma ideia?


Este projeto está relacionado a esta sessão de perguntas e respostas em que os ícones caem da tela esquerda em um todo preto por causa de monitores de tamanhos diferentes:

  • Os ícones da área de trabalho caíram da tela esquerda para a terra do nunca

Graças à ajuda de Podesta, criei este código:

TestIcons () {

    [[ $TestSeconds == "" ]] || [[ $TestSeconds == 0 ]] && TestSeconds=5

    local i Position File
    for (( i=0; i<${#IconsArr[@]}; i=i+ICON_FLD_CNT )) ; do
        File="$ICONS_DIR"/"${IconsArr[((i+ICON_NAME_NDX))]}"
        Position="${IconsArr[((i+ICON_COL_NDX))]},${IconsArr[((i+ICON_ROW_NDX))]}"
        gvfs-set-attribute -t string "$File" \
                'metadata::nautilus-icon-position' "$Position"
    done

    wmctrl -k on        # Show desktop
    xdotool key F5      # Refresh desktop (show icon new positions)
    sleep $TestSeconds  # Pause for view
    wmctrl -k off       # Restore windows

    for (( i=0; i<${#OldIconsArr[@]}; i=i+ICON_FLD_CNT )) ; do
        File="$ICONS_DIR"/"${OldIconsArr[((i+ICON_NAME_NDX))]}"
        Position="${OldIconsArr[((i+ICON_COL_NDX))]},${OldIconsArr[((i+ICON_ROW_NDX))]}"
        gvfs-set-attribute -t string "$File" \
                'metadata::nautilus-icon-position' "$Position"

    done

    wmctrl -k on        # Show desktop
    xdotool key F5      # Refresh desktop (show icon new positions)
    wmctrl -k off       # Restore windows

} # TestIcons

É assim que a tela se parece:

icônico 2 otimizado.gif

command-line bash window-manager gnome-shell xdotool
  • 1 respostas
  • 2490 Views
Martin Hope
WinEunuuchs2Unix
Asked: 2019-05-26 09:56:11 +0800 CST

Os ícones da área de trabalho na tela esquerda descem para o buraco negro

  • 4

Esta é uma pergunta auto-respondida. Veja minha resposta abaixo.

Aqui está minha configuração de vários monitores:

$ xrandr --current | grep " connected"
HDMI-0 connected 1920x1080+0+0 (normal left inverted right x axis y axis) 1107mm x 623mm
eDP-1-1 connected primary 1920x1080+3840+2160 (normal left inverted right x axis y axis) 382mm x 215mm
DP-1-1 connected 3840x2160+1920+0 (normal left inverted right x axis y axis) 1600mm x 900mm

Uma visualização GUI da configuração do monitor é:

resize1.png

Anteriormente, os ícones da área de trabalho no monitor da TV Sony eram agrupados corretamente:

+---------+  +---------+  
| Icon 1  |  | Icon 7  |  
+---------+  +---------+  
| Icon 2  |  | Icon 8  |  
+---------+  +---------+  
| Icon 3  |  | Icon 9  |  
+---------+  +---------+  
| Icon 4  |  | Icon 10 |  
+---------+  +---------+  
| Icon 5  |  | Icon 11 |  
+---------+  +---------+  
| Icon 6  |
+---------+

Depois que a TV Toshiba foi comprada, a segunda coluna de ícones desapareceu e a coluna 1 foi truncada:

+---------+
| Icon 1  |
+---------+
| Icon 2  |
+---------+
| Icon 3  |
+---------+
| Icon 4  |
+---------+
| Icon 5  |
+---------+
| Icon 6  |
+---------+
| Icon 7  |

Embora a TV Sony tenha 1080 pixels de altura, quando combinada com a tela inferior direita da TV Toshiba Laptop Display (outros 1080 pixels), o gerenciador de desktop parece usar 4320 pixels virtuais para colocar os ícones.

Como posso colocar ícones na área de trabalho usando o tamanho do monitor e não o tamanho da tela virtual?

Às vezes, assisto a vídeos em tela cheia no monitor esquerdo. Como posso colocar ícones em qualquer monitor como a TV Toshiba?

Embora um script Python possa resolver o problema, prefiro uma solução bash porque me sinto mais confortável modificando o bash.

multiple-monitors bash desktop-environments window-manager desktop-icons
  • 1 respostas
  • 438 Views
Martin Hope
WinEunuuchs2Unix
Asked: 2019-05-20 12:05:53 +0800 CST

O que `LOGFILE=${1:-/var/log/syslog}` faz?

  • 5

Eu me deparei com este script contendo:

LOGFILE=${1:-/var/log/syslog}

O que essa linha faz?

command-line bash
  • 1 respostas
  • 496 Views
Martin Hope
WinEunuuchs2Unix
Asked: 2019-05-18 08:54:07 +0800 CST

Como faço para suprimir os avisos GtkDialog no zenity e yad usando o redirecionamento Bash em um script?

  • 3

Estou tentando suprimir GtkDialogavisos em zenitye yad:

$ zenity --error --text hello
Gtk-Message: GtkDialog mapped without a transient parent. This is discouraged.

O redirecionamento de erros e a filtragem funcionam:

$ zenity --error --text hello 2> >(grep -v GtkDialog >&2)

SIM... A mensagem de aviso irritante desaparece!!

Isso pode ser colocado ~/.bashrcpara o trabalho de desenvolvimento conforme respondido aqui:

  • Como fazer com que o aviso “pai transitório” do zenity desapareça permanentemente (usando a função)

e aqui:

  • Como fazer com que o aviso de “pai transitório” do zenity desapareça permanentemente (usando alias)

No entanto, ao criar um script para uso de outras pessoas, você não deseja o fardo de alterar seus arquivos ~/.bashrc.


Estou tendo problemas para criar um atalho de digitação para: 2> >(grep -v GtkDialog >&2)para ser usado dentro do script.

Por muitas razões, a atribuição de variáveis GTK_SPAM="2> >(grep -v GtkDialog >&2)"​​seguida posteriormente pelo uso de variáveis "$GTK_SPAM"​​não funciona.

alias zenity="zenity 2> >(grep -v GtkDialog >&2)"antes de chamar o script funciona, mas não posso usar isso em um script.

Usar uma matriz para manter o atalho de digitação não está funcionando:

$ aGtkSpam=(2\> \>\(grep -v GtkDialog \>\&2\))

$ DumpArray "${aGtkSpam[@]}"
Array Elements:
0: 2>
1: >(grep
2: -v
3: GtkDialog
4: >&2)

$ zenity --error --text hello "${aGtkSpam[@]}"
This option is not available. Please see --help for all possible usages.

$ yad --text hello 2> >(grep -v GtkDialog >&2)

$ yad --text hello "${aGtkSpam[@]}"
Gtk-Message: GtkDialog mapped without a transient parent. This is discouraged.

Encontrei muitas respostas genéricas excelentes sobre divisão de palavras e parâmetros que devem resolver meu problema, mas uma sintaxe específica me escapa.

Alguma pista?

command-line bash redirect
  • 3 respostas
  • 2204 Views

Sidebar

Stats

  • Perguntas 205573
  • respostas 270741
  • best respostas 135370
  • utilizador 68524
  • Highest score
  • respostas
  • Marko Smith

    Existe um comando para listar todos os usuários? Também para adicionar, excluir, modificar usuários, no terminal?

    • 9 respostas
  • Marko Smith

    Como excluir um diretório não vazio no Terminal?

    • 4 respostas
  • Marko Smith

    Como descompactar um arquivo zip do Terminal?

    • 9 respostas
  • Marko Smith

    Como instalo um arquivo .deb por meio da linha de comando?

    • 11 respostas
  • Marko Smith

    Como instalo um arquivo .tar.gz (ou .tar.bz2)?

    • 14 respostas
  • Marko Smith

    Como listar todos os pacotes instalados

    • 24 respostas
  • Martin Hope
    Flimm Como posso usar o docker sem sudo? 2014-06-07 00:17:43 +0800 CST
  • Martin Hope
    led-Zepp Como faço para salvar a saída do terminal em um arquivo? 2014-02-15 11:49:07 +0800 CST
  • Martin Hope
    ubuntu-nerd Como descompactar um arquivo zip do Terminal? 2011-12-11 20:37:54 +0800 CST
  • Martin Hope
    TheXed Como instalo um arquivo .deb por meio da linha de comando? 2011-05-07 09:40:28 +0800 CST
  • Martin Hope
    Ivan Como listar todos os pacotes instalados 2010-12-17 18:08:49 +0800 CST
  • Martin Hope
    David Barry Como determino o tamanho total de um diretório (pasta) na linha de comando? 2010-08-06 10:20:23 +0800 CST
  • Martin Hope
    jfoucher "Os seguintes pacotes foram retidos:" Por que e como resolvo isso? 2010-08-01 13:59:22 +0800 CST
  • Martin Hope
    David Ashford Como os PPAs podem ser removidos? 2010-07-30 01:09:42 +0800 CST

Hot tag

10.10 10.04 gnome networking server command-line package-management software-recommendation sound xorg

Explore

  • Início
  • Perguntas
    • Recentes
    • Highest score
  • tag
  • help

Footer

AskOverflow.Dev

About Us

  • About Us
  • Contact Us

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve