Perguntas sobre 'bash'

Bash (Bourne-Again SHell), é o shell usado na interface de linha de comando do Ubuntu por padrão.
3
respostas

Resultado anômalo usando o comando bash “set”

Quando alguém emite o comando set sem argumentos em um prompt do bash (o que deve gerar uma lista de variáveis do shell e seus valores), um script de 8.274 linhas passa por. Examinar este script mostra que são instruções para o shell para exe...
19.02.2012 / 22:08
2
respostas

símbolos de substituição para quebra de linha (\ n) e adicionar as três primeiras colunas a partir do início da linha

Eu tenho um arquivo de log com texto: Jan 10 09:56:17 1484207777.225918 GET "8.8.8.8" "curl/7.27.0" #0121484207777.226639 GET "8.8.8.9" "curl/7.21.0" #0121484207777.226639 GET "8.8.5.9" "curl/7.22.0" Jan 10 19:59:17 1484207777.225456 GET "8...
12.01.2017 / 15:49
3
respostas

Por que o printf relata um erro em todos os Pontos de Codificação Unicode, exceto em três (intervalo ASCII), mas está bem com todos os outros?

O 'printf' a que me refiro é o "programa" de edição padrão (não o incorporado): /usr/bin/printf Eu estava testando o printf como um método viável de converter um Codexoint Hex-literal Unicode em sua representação de caractere Unicoder,...
09.01.2011 / 22:19
2
respostas

Como extrair uma tabela de despejo de links?

O seguinte é um links -dump do qual eu quero extrair a tabela com todas as colunas em todo o arquivo ... Eu tentei usar awk mas falhou * Home * Frontpage * Continents * Africa * The Americas...
19.12.2016 / 10:15
2
respostas

hostnamectl: comando não encontrado

Estou usando o Ubuntu 14.04.3 LTS, quando tento executar o comando hostnamectl recebo o erro: bash: hostnamectl: command not found Qual biblioteca devo instalar para usar hostnamectl ?     
18.09.2016 / 11:49
1
resposta

Terminal fecha imediatamente após tentar alterar o shell script de volta para o bash

Eu estava brincando com fish shell no meu Ubuntu, mas queria voltar ao bash. Eu tentei correr chsh -s /bin/bash mas isso não funcionou, recebi algum erro, que o IIRC estava a respeito de permissões, então tentei fazer sudo chsh -s /bin...
23.01.2017 / 09:25
2
respostas

Como excluir arquivos duplicados com base no padrão (veja os exemplos abaixo) usando um script ou um comando Bash

Minha pergunta é simples: Eu tenho arquivos de vídeo com o seguinte nome: xxxx_yyy_720_3800.mp4 xxxx_yyy_720_8000.mp4 onde yyy pode variar em comprimento (por exemplo, yyyyyy ou mais y) Como não sou usado em scripts de shell...
14.07.2015 / 18:22
2
respostas

Qual é a melhor prática de customizar o prompt do Bash (também conhecido como a variável de ambiente PS1)?

Estou tentando adicionar o nome da ramificação do Git ao meu prompt do Bash, alterando a variável PS1 assim: PS1='echo "$PS1" | sed 's/\\\$ $/\$(__git_ps1)\\\$ /'' E, se bem entendi, não é recomendado atualizar ~/.bashrc para fins d...
13.03.2015 / 06:21
2
respostas

Exibindo o nome do TTY no nome do terminal

Estou querendo saber como posso exibir o TTY que um terminal está usando atualmente no nome da janela do Terminal. Eu não vejo nenhuma opção em Terminal Preferences para exibir tal coisa no nome da janela do Terminal com o gnome-terminal. Eu...
24.10.2014 / 10:52
3
respostas

___ qstnhdr___ sed substituir texto contendo nova linha ______ qstntxt ___

Eu tenho um script bash para instalar um servidor web no meu servidor Ubuntu.

Eu gostaria, no /etc/apache2/apache2.conf, de substituir

%pre%

por

%pre%

Se eu fizer

%pre%

está funcionando, mas eu gostaria de incluir a linha em branco e o # após o #ServerRoot para evitar adicionar duas vezes ServerName se o script for executado duas vezes.

Eu tentei

%pre%

Mas não está funcionando.

    
______ azszpr491178 ___

Que tal

  1. pesquise %code%
  2. se encontrado, lido e anexado a próxima linha no espaço padrão do sed
  3. pesquise o espaço padrão anexado por uma linha vazia após a nova linha e substitua %code% por essa

Juntando isso,

%pre%

Caso a linha 'vazia' contenha espaços em branco, você pode modificá-la para

%pre%     
______ azszpr491157 ___

Por fim, a verificação em dobro de %code% funcionando em %code% com ajuda deste . Pouco de boca cheia:

%pre%

E um awk que faz o mesmo (mais longo, mas mais fácil de entender o IMO). A lógica e %code% são explicados na última seção.

%pre%

Edit: O %code% não é tão difícil quanto eu pensava que era. Você só quer combinar e anexar (o comando %code% ); você não precisa substituir. Eu testei o seguinte como trabalhando:

%pre%

Você pode ser mais específico com o seu jogo se quiser e deixarei o %code% abaixo para a posteridade.

A edição é bastante trivial com %code% , mas para escrever novamente no mesmo arquivo, precisamos de um arquivo intermediário temporário ou %code% (do %code% package). Eu vou mostrar os dois métodos.

%pre%

Ou

%pre%

O %code% está imprimindo todas as linhas encontradas, mas no caso de uma correspondência para %code% , a linha ServerName é gravada. Eu acho esse tipo de processamento muito mais fácil de ler do que "trocar" arbitrariamente com o sed.

    
______ azszpr491205 ___

Outra forma (obrigado muru) mas um pouco fora de contexto porque não usa sed:

Para o Ubuntu 14.04 :

Crie um arquivo fqdn.conf em / etc / apache2 / conf-available / contendo

%pre%

Crie um link simbólico em / etc / apache2 / conf-enabled /

%pre%     
___

Eu tenho um script bash para instalar um servidor web no meu servidor Ubuntu. Eu gostaria, no /etc/apache2/apache2.conf, de substituir #ServerRoot "/etc/apache2" # por #ServerRoot "/etc/apache2" ServerName localhost # Se eu fi...
03.07.2014 / 11:12