Articles of bash

Como cortar o espaço em branco de uma variável Bash?

Eu tenho um script de shell com este código: var=`hg st -R “$path”` if [ -n “$var” ]; then echo $var fi Mas o código condicional sempre é executado, porque hg st sempre imprime pelo menos um caractere de nova linha. Existe uma maneira simples de retirar o espaço em branco de $var (como trim() […]

Por que você precisa de ./ (ponto-barra) antes do nome do executável ou do script para executá-lo no bash?

Ao executar scripts no bash, eu tenho que escrever ./ no começo: $ ./manage.py syncdb Se não, recebo uma mensagem de erro: $ manage.py syncdb -bash: manage.py: command not found Qual é a razão para isto? Eu pensei . é um alias para a pasta atual e, portanto, essas duas chamadas devem ser equivalentes. Eu […]

Capturando várias saídas de linha em uma variável de Bash

Eu tenho um script ‘myscript’ que gera o seguinte: abc def ghi em outro script, eu chamo: declare RESULT=$(./myscript) e $RESULT obtém o valor abc def ghi Existe uma maneira de armazenar o resultado com as novas linhas ou com o caractere ‘\ n’ para que eu possa gerar o resultado com ‘ echo -e […]

Tempo limite de um comando no bash sem atraso desnecessário

Esta resposta ao comando da linha de comando para auto-matar um comando após um determinado período de tempo propõe um método de 1 linha para tempo limite de um comando de longa execução a partir da linha de comando bash: ( /path/to/slow command with options ) & sleep 5 ; kill $! Mas é possível […]

Quando precisamos de chaves ao redor de variables ​​de shell?

Em scripts de shell, quando usamos {} ao expandir variables? Por exemplo, eu vi o seguinte: var=10 # Declare variable echo “${var}” # One use of the variable echo “$var” # Another use of the variable Existe uma diferença significativa ou é apenas um estilo? É um preferido em detrimento do outro?

Passe comandos como input para outro comando (su, ssh, sh, etc)

Eu tenho um script onde eu preciso iniciar um comando, em seguida, passar alguns comandos adicionais como comandos para esse comando. eu tentei su echo I should be root now: who am I exit echo done. … mas não funciona: O su é bem-sucedido, mas o prompt de comando está apenas me encarando. Se eu […]

Como analisar XML no Bash?

Idealmente, o que eu gostaria de poder fazer é: cat xhtmlfile.xhtml | getElementViaXPath –path=’/html/head/title’ | sed -e ‘s%(^|$)%%g’ > titleOfXHTMLPage.txt

Quais são as variables ​​especiais do shell de cifrão?

No Bash, parece haver várias variables ​​que possuem valores especiais e consistentes. Por exemplo, ./myprogram &; echo $! retornará o PID do processo que myprogram . Eu conheço outros, como $? que eu acho que é o atual TTY. Existem outros?

Como concatenar variables ​​de string no Bash

No PHP, as strings são concatenadas juntas da seguinte maneira: $foo = “Hello”; $foo .= ” World”; Aqui, $foo se torna “Hello World”. Como isso é feito em Bash?

Expansão da variável dentro de aspas simples em um comando no Bash

Eu quero executar um comando de um script de shell bash que tem aspas simples e alguns outros comandos dentro das aspas simples e uma variável. por exemplo, repo forall -c ‘….$variable’ Nesse formato, $ é escapado e a variável não é expandida. Eu tentei as seguintes variações, mas elas foram rejeitadas: repo forall -c […]