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-255251

Prvt_Yadav's questions

Martin Hope
Prvt_Yadav
Asked: 2019-09-21 03:47:12 +0800 CST

O comando sed funciona com o sinalizador e, mas não com o E

  • 2

Eu tenho uma string e preciso adicionar #, no começo, ou seja, converter [ -n "$ID" -a "$ID" -le 200 ] && returnpara #[ -n "$ID" -a "$ID" -le 200 ] && return. Eu posso usar o comando abaixo:

echo '[ -n "$ID" -a "$ID" -le 200 ] && return'| sed -n -e 's/\[ -n "$ID" -a "$ID" -le 200 \] && return/#&/p'

Funciona. Agora eu tenho duas perguntas, em relação ao E, flag.

  1. Para a string [ -n "$ID" -a "$ID" -le 200 ], se eu escapar de colchetes, não funciona; no entanto, funciona quando eu não escapo deles, ou seja

    sed -n -E 's/[ -n "$ID" -a "$ID" -le 200 ]/#&/p'
    

    funciona enquanto

     sed -n -E 's/\[ -n "$ID" -a "$ID" -le 200 \]/#&/p'
    

    não funciona.

  2. Pois, a string completa [ -n "$ID" -a "$ID" -le 200 ] && return, me dá uma resposta errada, quando não escapo deles:

    echo '[ -n "$ID" -a "$ID" -le 200 ] && return'| sed -n -E 's/[ -n "$ID" -a "$ID" -le 200 ] && return/#&/p'
    

    Ele me dá saída:

     [ -n "$ID" -a "$ID" -le 200 #] && return
    

Eu quero saber como está funcionando.

sed
  • 1 respostas
  • 235 Views
Martin Hope
Prvt_Yadav
Asked: 2019-06-19 01:07:13 +0800 CST

Como converter colunas em linha onde cada coluna tem vários valores?

  • 0

Eu tenho um arquivo com dados como:

1,2,3 4,5,6 7,8,9 12,22,0

Existem 4 colunas que eu quero fazer uma tabela com 4 colunas, digamos a,b,c,d, de modo que a coluna atenha o valor da 1ª coluna, a coluna btenha esse valor correspondente da 2ª coluna e assim por diante ..

No exemplo acima as colunas serão como:

a   b   c   d
1   4   7   12
2   5   8   22
3   6   9   0

Também o não. de entradas na coluna para uma determinada linha será o mesmo. No entanto, essas entradas podem ser diferentes para linhas diferentes, por exemplo, algumas linhas podem ter apenas 1 entrada separada por vírgula para cada coluna, algumas podem ter até 10.

text-processing sed
  • 2 respostas
  • 651 Views
Martin Hope
Prvt_Yadav
Asked: 2019-02-21 10:35:36 +0800 CST

Por que o terminal recebe entrada linha por linha?

  • 2

Se eu usar:

strace echo 'a
b
c' > file

As linhas de fundo são:

write(1, "a\nb\nc\nd\n", 8)             = 8

mas em

strace echo 'a
b
c
d' > /dev/pts/0

Essas linhas são:

write(1, "a\n", 2)                      = 2
write(1, "b\n", 2)                      = 2
write(1, "c\n", 2)                      = 2
write(1, "d\n", 2)                      = 2

No segundo caso, por que está escrevendo linha por linha, enquanto no primeiro caso está escrevendo junto. Pode ser porque o terminal é um dispositivo de caractere, mas recebi a definição de dispositivo de caractere como:

Um dispositivo de caractere (char) é aquele que pode ser acessado como um fluxo de bytes (como um arquivo). a maioria dos dispositivos char são apenas canais de dados, que você só pode acessar sequencialmente.

Edit: Shell é bash.

shell devices
  • 1 respostas
  • 243 Views
Martin Hope
Prvt_Yadav
Asked: 2019-01-20 09:57:24 +0800 CST

Substitua o texto usando sed e também adicione aspas simples a ele [duplicado]

  • 1
Essa pergunta já tem respostas aqui :
Como escapar de aspas no shell? (5 respostas)
Fechado há 3 anos .

Eu respondi a esta pergunta , mas estou preso na parte em que também tenho que adicionar uma aspa simples.

Como o arquivo original é:

$$BATCHCTRL=TEST-012017
$$STATE=CA AZ
$$FROM_DATE=01/10/2017
$$TO_DATE=01/30/2017

O novo arquivo deve ser:

$$BATCHCTRL=TEST-012017
$$STATE='CA'
$$FROM_DATE=01/10/2017
$$TO_DATE=01/30/2017

eu usei

sed -Ei 's/^\$\$STATE=([A-Z]{2}) ([A-Z]{2})/\$\$STATE=\1/g' sed_file

Então eu consegui:

$$BATCHCTRL=TEST-012017
$$STATE=CA
$$FROM_DATE=01/10/2017
$$TO_DATE=01/30/2017

mas agora não consigo adicionar aspas simples nele. Eu tentei escapar, usei aspas duplas em vez de aspas simples, tentei sem aspas, mas nenhuma está funcionando.

text-processing sed
  • 3 respostas
  • 7953 Views
Martin Hope
Prvt_Yadav
Asked: 2018-12-04 08:32:29 +0800 CST

É possível obter a saída apenas do comando sudo?

  • 1

Eu quero escrever a saída apenas do comando sudo em algum arquivo, ou seja, a linha que recebo no terminal depois de escrever sudo, ou seja

[sudo] password for user:

Se eu usar sudo ls > fileou sudo ls 2> filerecebo o stdout e stderr respectivamente de todo o comando. Além disso, não consigo usar sudo > fileou sudo 2> file, receberei um erro de que devo usar algumas opções ou comandos após o sudo. Então, é possível alcançar?

sudo io-redirection
  • 1 respostas
  • 703 Views
Martin Hope
Prvt_Yadav
Asked: 2018-08-05 00:53:31 +0800 CST

Por que systemctl halt pede senha, mas systemctl reboot e systemctl poweroff não?

  • 2

Estou usando o Debian 9.5. Do terminal sempre que eu digitar o comando systemctl halt, ele dirá:

Authentication is required to start halt.target

e ele vai pedir a senha. Mas eu posso usar comandos systemctl reboote systemctl poweroffeles não pedirão senha e serão executados com sucesso. Eu acho que se ele pedir senha para parar , então ele também deve pedir poweroff .

shutdown systemctl
  • 1 respostas
  • 1354 Views
Martin Hope
Prvt_Yadav
Asked: 2018-07-08 08:31:56 +0800 CST

Preso no loop de login enquanto o tty e o terminal do modo de recuperação funcionam bem

  • 0

Estou tendo linux mint 18. Eu acidentalmente removi /bin/bash. Então, logo após removê-lo, alterei o shell padrão do usuário do terminal (de /bin/bashpara /bin/she /bin/shlinks para dash) em /etc/passwd. Agora, após a reinicialização, estou preso no loop de login. Depois de digitar a credencial, obtenha a tela em branco por 10 segundos novamente, obtenha a mesma tela de login. Também tty1 tty2...não estão funcionando. Ao inserir minha credencial, eles desaparecem e novamente obtêm a mesma coisa nesses terminais.

problema 2

Quando entro no modo de recuperação, recebo a mesma tela de login do usuário normal. Não estou recebendo as opções do modo de recuperação. Só me leva para a tela de login.

editar 1

Apertei e no menu grub e adicionei rw init=/bin/dashno final da linha onde linux /boot/vmlinuz.... está escrito.

Saída de ls -l /etc/passwdérw-r--r-- root root

Se eu fizer cat /etc/passwda entrada de usuários é

user:x:1000:1000:user,,,:/home/user:/bin/dash

ls -l /bin/dashmostra que não aponta para /bin/bash. Como uma resposta disse para verificar.

editar 2

Eu baixei o pacote bash no meu sistema windows, copiei para o disco rígido externo e depois copiei do disco rígido para o sistema linux. Compilei e instalei. Executável copiado para /bin/bash.

Agora usadochsh -s /bin/bash user

Agora posso entrar no modo de recuperação, funciona bem. Posso usar tty1..eles também funcionam bem. Posso alternar para o usuário usando su usere tty1funciona bem. Se eu fizer echo $SHELLisso, diz /bin/bash, mas ainda não pode entrar no ambiente gráfico. Nem o convidado nem o usuário podem fazer login no sistema gráfico. O usuário pode usar o terminal facilmente, ele funciona lá, mas não pode usar o ambiente gráfico.

shell login
  • 1 respostas
  • 2071 Views
Martin Hope
Prvt_Yadav
Asked: 2018-07-05 05:06:46 +0800 CST

Use waitpid para criança com groupid 1

  • 0

Pesquisei muito mas não encontrei solução. Então pode ser uma pergunta boba.

O formato do waitpid é

pid_t waitpid (pid_t pid, int *status, int options)

O parâmetro pid especifica exatamente qual processo ou processos aguardar. Seus valores se dividem em quatro campos:

< -1
Wait for any child process whose process group ID is equal to the absolute value of this value.

-1
Wait for any child process. This is the same behavior as wait( ).

0
Wait for any child process that belongs to the same process group as the calling process. 

> 0
Wait for any child process whose pid is exactly the value provided.

Agora, a questão é: e se pai e filho tiverem id de grupo diferente e o id de grupo do filho for 1. Como usar waitpid para esse filho específico? Como não podemos usar -1, ele dirá para esperar por qualquer criança.

process system-calls
  • 2 respostas
  • 1080 Views
Martin Hope
Prvt_Yadav
Asked: 2018-06-09 05:36:43 +0800 CST

erro de variável no bash

  • 4

Estou escrevendo meu primeiro código no bash. Estou preso a partir de 2 horas. Este é o meu código:

#!/bin/bash
declare -i l=0
declare -i d=0
declare -i s1=0
declare -i s2=0
declare -i t=0
declare -i o=0
declare -i p=0
for i in demo_room/subject_1/?*
do
    if [ "${i:0:1}" = "l" ];
    then
            ((l++));
            echo "l=$l"
            python motempl_n.py $i $l

    elif [  "${i:0:1}" = "d" ];
    then
            ((d++));
            echo "d=$d"
            python motempl_n.py $i $d

    elif [  "${i:0:1}" = "o" ];
    then
            o=$((o+1));
            echo "o=$o"
            python motempl_n.py $i $o

    elif [ "${i:0:1}" = "p" ];
    then
            p=$((p+1));
            python motempl_n.py $i $p

    elif [  "${i:0:1}" = "t" ];
    then
            t=$((t+1));
            python motempl_n.py $i $t

    elif [  "${i:0:7}" = "slide_1" ];
    then
            s1=$((s1+1));
            python motempl_n.py $i $s1

    #elif [  "${i:0:7}" == 'slide_2' ]
    else
            s2=$((s2+1));
            python motempl_n.py $i $s2

   fi 
done

Então eu estou tendo uma pasta demo_room/subject_1. Nesta pasta tenho 140 vídeos avi seus nomes são:

20 vídeos têm nome: dislike_01paradislike_20

20 vídeos têm nome: like_01paralike_20

20 vídeos têm nome: ok_01paraok_20

20 vídeos têm nome: point_01parapoint_20

20 vídeos têm nome: slide_1_01paraslide_1_20

20 vídeos têm nome: slide_2_01paraslide_2_20

20 vídeos têm nome: take_a_picture_01paratake_a_picture_1_20

O que eu quero fazer é primeiro encontrar a classe do vídeo de entrada e depois dar sua ocorrência como entrada para o arquivo python. Os primeiros 20 vídeos da subject_1pasta são dislikeum, então esse código funciona bem, mas o 21º vídeo é like_01, mas o parâmetro que ele passa para o código python é 21.

Mas deve ser 1 porque este é o primeiro vídeo da classe como no loop for. E cada vez que imprime o valor de $d. Significa cada vez que vai em 2º if condition. No código python posso verificar se o nome do vídeo é like_01mas o segundo valor passado é 21. Por quê? Isso acontece para todos os 140 vídeos.

shell-script python
  • 3 respostas
  • 727 Views
Martin Hope
Prvt_Yadav
Asked: 2018-05-06 08:00:47 +0800 CST

O que é o tempo limite do firmware?

  • 5

Encontrei um arquivo /sys/class/firmware/timeout, e este arquivo contém apenas uma palavra 60 . Esse tempo limite está relacionado a bootloadergostar GRUB timeout? Qual é a utilidade prática disso?

linux firmware
  • 1 respostas
  • 985 Views
Martin Hope
Prvt_Yadav
Asked: 2018-05-04 23:25:25 +0800 CST

O comando w não mostra todas as sessões pseudo-terminal

  • 3

Se eu abrir o terminal e executar wo comando, ele mostrará:

user   tty7     :0               12:04   39:56  36.87s  0.06s /sbin/upstart -

Agora, se abrir terminatorou xtermexecutar wo comando, ele mostrará sua entrada na saída do wcomando como

user   tty7     :0               12:04   39:56  36.87s  0.06s 
/sbin/upstart -
user   pts/2    :0.0             12:50    1.00s  0.02s  0.00s w

mas não mostrará uma nova entrada quando eu abrir gnome-terminalou xfce4-terminal. Por que está mostrando nova sessão para terminador e não para xfce4-terminal?

login session
  • 2 respostas
  • 1979 Views
Martin Hope
Prvt_Yadav
Asked: 2018-02-23 05:36:09 +0800 CST

Como executar o jhbuild como root

  • 2

Instalei o jhbuild e configurei a variável PATH como $PATH:~/.local/bin. Agora, quando executo o comando jhbuild, recebo o erro: You should not use jhbuild as root user e quando altero o usuário para não-root e novamente altero o valor PATH para acima de um substituindo ~ por /root, recebo o erro jhbuild command not encontrado. Estou usando o kali linux, então o usuário padrão é o usuário root.

gnome python
  • 3 respostas
  • 580 Views
Martin Hope
Prvt_Yadav
Asked: 2018-01-14 07:38:58 +0800 CST

Exceção ACPI: não foi possível localizar/resolver elemento de pacote nomeado: AMD 3(dspkginit-381)

  • 2

Estou continuamente enfrentando problemas um após o outro, primeiro tive esse problema no Ubuntu , não consegui solução, então instalei o fedora e excluí o Ubuntu. Agora, na inicialização, recebo isso insira a descrição da imagem aqui. Após a inicialização, mostra o erro que:

BOOT_IMAGE=/boot/bmlinuz-4.14.13-300.fc27.x86_64 crashed,

em sua descrição mostra que este é um problema de hardware e não de software. Estou tendo gráficos AMD RADEON .

Acho que isso está deixando meu sistema lento ao executar tarefas.

PS Este é um notebook Lenovo.

kernel fedora
  • 1 respostas
  • 4939 Views
Martin Hope
Prvt_Yadav
Asked: 2018-01-12 09:44:53 +0800 CST

Como reverter o conteúdo do arquivo binário?

  • 14

Eu estava resolvendo um desafio em que encontrei um arquivo de dados sem extensão de arquivo. O filecomando mostra que é um arquivo data file (application/octet-stream). O hdcomando mostra o PIB. na última linha. Portanto, se eu inverter esse arquivo, obterei o arquivo no formato .PNG , procurei em todos os lugares, mas não encontrei uma solução explicando como inverter o conteúdo de um arquivo binário.

binary
  • 5 respostas
  • 22701 Views
Martin Hope
Prvt_Yadav
Asked: 2017-11-30 02:14:09 +0800 CST

Diferença entre sudo nautilus e sudo -E nautilus

  • -5

O ubuntu 17.04 mais recente foi instalado e não consegui executar o comando sudo nautilus, estava dando erro. Então pesquisei no google e tentei sudo -E nautilus e funcionou. Qual é a diferença entre ambos.

ubuntu sudo
  • 1 respostas
  • 1339 Views
Martin Hope
Prvt_Yadav
Asked: 2017-11-25 02:09:07 +0800 CST

Instale várias distribuições Linux em paralelo

  • 1

Estou usando o Ubuntu e quero instalar o opensuse em paralelo, é bom manter os dois gerenciadores de inicialização no MBR ou devo manter o opensuse em outra partição que aloquei durante a instalação. Nesse caso, verei as opções para fazer login no ubuntu/opensuse.

ubuntu partition
  • 2 respostas
  • 1539 Views

Sidebar

Stats

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

    Possível firmware ausente /lib/firmware/i915/* para o módulo i915

    • 3 respostas
  • Marko Smith

    Falha ao buscar o repositório de backports jessie

    • 4 respostas
  • Marko Smith

    Como exportar uma chave privada GPG e uma chave pública para um arquivo

    • 4 respostas
  • Marko Smith

    Como podemos executar um comando armazenado em uma variável?

    • 5 respostas
  • Marko Smith

    Como configurar o systemd-resolved e o systemd-networkd para usar o servidor DNS local para resolver domínios locais e o servidor DNS remoto para domínios remotos?

    • 3 respostas
  • Marko Smith

    apt-get update error no Kali Linux após a atualização do dist [duplicado]

    • 2 respostas
  • Marko Smith

    Como ver as últimas linhas x do log de serviço systemctl

    • 5 respostas
  • Marko Smith

    Nano - pule para o final do arquivo

    • 8 respostas
  • Marko Smith

    erro grub: você precisa carregar o kernel primeiro

    • 4 respostas
  • Marko Smith

    Como baixar o pacote não instalá-lo com o comando apt-get?

    • 7 respostas
  • Martin Hope
    user12345 Falha ao buscar o repositório de backports jessie 2019-03-27 04:39:28 +0800 CST
  • Martin Hope
    Carl Por que a maioria dos exemplos do systemd contém WantedBy=multi-user.target? 2019-03-15 11:49:25 +0800 CST
  • Martin Hope
    rocky Como exportar uma chave privada GPG e uma chave pública para um arquivo 2018-11-16 05:36:15 +0800 CST
  • Martin Hope
    Evan Carroll status systemctl mostra: "Estado: degradado" 2018-06-03 18:48:17 +0800 CST
  • Martin Hope
    Tim Como podemos executar um comando armazenado em uma variável? 2018-05-21 04:46:29 +0800 CST
  • Martin Hope
    Ankur S Por que /dev/null é um arquivo? Por que sua função não é implementada como um programa simples? 2018-04-17 07:28:04 +0800 CST
  • Martin Hope
    user3191334 Como ver as últimas linhas x do log de serviço systemctl 2018-02-07 00:14:16 +0800 CST
  • Martin Hope
    Marko Pacak Nano - pule para o final do arquivo 2018-02-01 01:53:03 +0800 CST
  • Martin Hope
    Kidburla Por que verdadeiro e falso são tão grandes? 2018-01-26 12:14:47 +0800 CST
  • Martin Hope
    Christos Baziotis Substitua a string em um arquivo de texto enorme (70 GB), uma linha 2017-12-30 06:58:33 +0800 CST

Hot tag

linux bash debian shell-script text-processing ubuntu centos shell awk ssh

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