Perguntas sobre 'bash'

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

Como definiu o PATH para todos os usuários no Debian?

Eu tenho um servidor Debian Lenny, e eu gostaria que o usuário www-data tivesse /usr/local/zend/bin em seu PATH, então ele pode executar um script no cron como www-data . Como eu adiciono /usr/local/zend/bin ao PATH, então www-dat...
02.08.2010 / 18:26
2
respostas

Existe algum utilitário como o cron, que programa um job para mais tarde (mas apenas uma vez)?

Estou tentando projetar um programa que envia um texto quando ocorre um determinado evento (não periódico). No momento, eu gostaria de um script que descubra quando esse evento ocorre e, em seguida, planeje um trabalho (cron-like) que enviará um...
13.04.2013 / 18:00
4
respostas

Como faço para ver du em GB em vez de MB em linux?

Isso funciona: du -cshm . Mas isso falha: du -cshg . Como posso vê-lo na unidade de GB?     
22.05.2010 / 16:56
3
respostas

___ qstnhdr___sat substitua todas as guias e espaços por um único espaço ______ qstntxt ___

Eu tenho uma string como esta:

%pre%

agora quero substituir todas as guias / espaços entre os registros por um único espaço, para que eu possa usá-lo facilmente com %code%

Eu tentei o seguinte:

%pre%

e várias varões, mas não conseguiram fazê-lo funcionar. Alguma idéia?

    
______ azszpr431168 ___

Use %code%

Aqui está uma explicação:

%pre%

Para sua substituição, você só deseja inserir um espaço. %code% não funcionará lá, já que é uma abreviação de uma classe de caracteres e o mecanismo de regex não saberia qual caractere colocar lá.

O %code% deve ser escapado na regex porque com o mecanismo de regex do sed %code% é um caractere normal, enquanto %code% é um metacaractere para 'um ou mais'. Na página 86 de Mastering Regular Expressions , Jeffrey Friedl menciona em uma nota de rodapé que ed e grep usavam parênteses com escape porque "Ken Thompson achava que expressões regulares seriam usadas para trabalhar primariamente com C código, onde a necessidade de combinar parênteses crus seria mais comum do que a retro-referência. "Suponho que ele se sentia da mesma maneira sobre o sinal de mais, daí a necessidade de escapar para usá-lo como um metacaractere. É fácil ser enganado por isso .

No sed, você precisará fugir de %code% , %code% , %code% , %code% e %code% . ou use -r para usar a regex estendida (então, parece que %code% ou %code%

    
______ azszpr895113 ___

Você pode usar a opção %code% ("squeeze") de %code% :

%pre%

A classe de caractere %code% é composta por espaços e guias.

    
______ azszpr725625 ___

Eu gosto de usar o seguinte apelido para o bash. Com base no que os outros escreveram, use sed para pesquisar e substituir vários espaços por um único espaço. Isso ajuda a obter resultados consistentes do corte. No final, eu corro através de sed mais uma vez para mudar o espaço para tabulação para que seja mais fácil de ler.

%pre%     
___

Eu tenho uma string como esta: test.de. 1547 IN SOA ns1.test.de. dnsmaster.test.de. 2012090701 900 1000 6000 600 agora quero substituir todas as guias / espaços entre os registros por um único espaço, para que eu poss...
23.09.2012 / 18:17
2
respostas

Como você evita caracteres em heredoc?

Estou trabalhando com um script bash tentando impedi-lo de tentar substituir variáveis dentro do meu heredoc. Como configurar um heredoc para A) escapar os nomes das variáveis ao invés de analisá-los ou B) retornar toda a string intocada? cat...
16.06.2012 / 15:31
4
respostas

bash script: repita o comando se ele retornar um erro

Eu gostaria de criar um loop que repita uma transferência ncftp se ele retornar um erro. Estou um pouco inseguro sobre como a variável de código de saída pode ser usada em um loop. Algo assim funcionaria? until [$? == 0]; do ncftpput -...
03.11.2009 / 09:05
1
resposta

Comando shell lento ao usar pipe, rápido com arquivo intermediário

Alguém entende essa grande diferença no tempo de processamento, ao usar um arquivo intermediário ou ao usar um canal? Estou convertendo tiff para pdf usando ferramentas padrão em um novo servidor squeeze debian. Uma maneira padrão de fazer isso...
19.04.2012 / 08:29
5
respostas

Qual é a diferença entre colchetes duplos e simples no bash?

Acabei de me perguntar o que exatamente a diferença entre [[ $STRING != foo ]] e [ $STRING != foo ] é, além de que o último é posix-compliant, encontrado em sh e o primeiro é uma extensão encontrada em bash.     
09.08.2009 / 21:11
6
respostas

mata uma tela (mas não todas as telas)

Eu tenho várias telas em execução em um servidor Ubuntu que são iniciadas como: screen -dmS screen1 cmd screen -dmS screen2 cmd etc... E eu preciso matar uma tela, mas não todas. Qual é o comando correto para matar uma única tela em parti...
21.12.2009 / 18:45
9
respostas

Como eu leio várias linhas de STDIN em uma variável?

Eu pesquisei essa pergunta sem sucesso. Estou automatizando um processo de construção aqui no trabalho, e tudo o que estou tentando fazer é obter números de versão e uma pequena descrição da construção que pode ser multi-linha. O sistema em que...
09.04.2012 / 21:20