O programa 'sed' não está atualmente instalado. Você pode instalá-lo digitando [sed: não encontrado]

0

Eu estava tentando criar meu próprio programa no / usr / local / bin.

Durante o processo, eu estraguei alguma coisa e agora, sempre que pressiono, digito ou digito qualquer coisa na linha de comando, recebo essa mensagem estúpida ...!

O programa 'sed' não está atualmente instalado. Você pode instalá-lo digitando

Como posso me livrar de "sed" ou seja o que for.

Oqueeudescobriatéagorasobreo'sed',éoSEDStreamEditor,quemanipulaotexto.Eucostumavausá-lodentrodomeu.bashrcparaanalisarecolorirotexto.Euagoradesabiliteiafunçãogitparsingdentrodomeu.bashrc.

Comopossoinstalaro'sed'novamente?

Eucorriapt-getinstallsed...Issomedizqueosedjáéaversãomaisrecente.OSEDestáagoramecausandomaisproblemas.Meuscomandosgitestãoquebrandoeatémesmomeuapt-getremoveeatualizaalgumasvezestambém.

EsteéoutroexemplodoqueoSEDestácausandodesdequeoSEDnãofoiencontrado

/etc/grub.d/00_header:1:/etc/grub.d/00_header:sed:notfoundrun-parts:/etc/kernel/postrm.d/zz-update-grubexitedwithreturncode127Failedtoprocess/etc/kernel/postrm.dat/var/lib/dpkg/info/linux-image-ex....

Qualsed

Quandoeuexecutowhichsed...Elesaicompletamenteembranco,nãosaialgoassim/usr/bin/sed.

AquiestáomeuPATHatual=..,queeutireide/ect/environment

PATH="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games"
    
por bbullis 26.01.2015 / 21:13

2 respostas

1

Minha solução:

Eu copiei um sed de outro servidor Ubuntu que estava rodando. scp me@server:/bin/sed /bin/sed

    
por bbullis 03.02.2015 / 23:12
2

Além de copiar o binário de outra máquina e esperar que seja a versão correta, isso também pode ser resolvido usando apt ou apt-get para instalar o pacote sed e passando a opção --reinstall para que o arquivo .deb seja baixado e instalado mesmo que o gerenciador de pacotes do Ubuntu pense em> já está presente.

sudo apt install --reinstall sed

Isso também funciona com apt-get em vez de apt . Ele desinstala e reinstala o pacote em uma única etapa. A situação neste problema é que o pacote se já está instalado, mas o executável foi excluído , portanto, a reinstalação resolve isso. Sem o sinalizador --reinstall , o gerenciador de pacotes considera que nada precisa ser feito, porque o pacote já está instalado.

Você pode executar sudo apt update primeiro, se desejar, embora isso não seja necessário nesse caso, a menos que você tenha modificado suas fontes de software sem fazer isso. Você pode passar o sinal --purge também se quiser, mas é desnecessário aqui, já que isso faz com que os conffiles do pacote sejam removidos quando ele é desinstalado.

sed é um utilitário que os programas geralmente podem assumir e dependem de si mesmos. Como você percebeu, os scripts que são executados ao instalar, remover ou atualizar o software podem usar sed . Essa é a fonte de suas mensagens de erro específicas. Em teoria, APT ou dpkg poderiam confiar nele diretamente e não conseguir reinstalá-lo. Na prática, isso não parece acontecer, e eu não espero que isso aconteça. Eu testei isso no Ubuntu 16.04 LTS.

Não consigo pensar em nenhuma situação em que a substituição do binário corrija o problema, mas a reinstalação não funcione nem mostre um erro imediatamente (veja os comentários no post). Embora eu não possa ter 100% de certeza de que essas instruções funcionariam para você - porque talvez mais tenha sido quebrado do que o documentado na pergunta - elas geralmente devem funcionar de forma tão confiável quanto substituir manualmente /bin/sed para outras pessoas que tenham esse problema. / p>     

por Eliah Kagan 20.09.2017 / 19:21