Perguntas com a marcação «bash»

8
Diferença entre [[$ variável]] e [[-n $ variável]]?

No bash, são [[ $variable ]]e [[ -n $variable ]]completamente equivalentes? Parece ser o caso a julgar pela saída abaixo, mas vejo as duas formas de uso predominantes nos scripts de shell. $ z="abra" $ [[ $z ]] $ echo $? 0 $ [[ -n $z ]] $ echo $? 0 $ z="" $ [[ $z ]] $ echo $? 1 $ [[ -n $z ]] $...

8
redirecionar e registrar a saída do script

Estou tentando organizar os seguintes trechos, os objetivos de design são registrar toda a saída de um script e não devem ser um invólucro. Menos linhas são melhores. Não ligo para as entradas do usuário (neste estágio), os scripts de destino são executados de maneira não interativa. O trecho...

8
leia -a matriz -d '\ n' <foo, código de saída 1

Se eu tentar executar read -a fooArr -d '\n' < bar o código de saída é 1 - mesmo que ele realize o que eu quero; coloque cada linha de barem um elemento da matriz fooArr(usando o bash 4.2.37). Alguém pode explicar por que isso está acontecendo Eu encontrei outras maneiras de resolver...

8
Otimizando um loop `while`

Eu criei um mini script para reiniciar o meu Raspberry Pi com o pressionar de um botão. O script simplesmente usa o wirePi (comando gpio) para definir o pino 0 (pino 17 na ordem de numeração padrão do Raspberry Pi) para inserir e, em seguida, lê o valor até que seja um (ou seja, quando o botão é...

8
Como alterar o prompt do subshell

Estou tentando criar um script simples que, entre outras coisas, criará um subshell: #!/bin/sh # setup "${@:-$SHELL}" # teardown A questão é: preciso alterar o prompt padrão, por exemplo: $ # shell padrão $ ./myscript (myscript) $ # subshell (myscript) $ exit $ Eu tentei mudar...

8
Obtendo saída colorida inesperada em vários comandos

Acabei de adicionar isso ao meu .bashrcpara obter uma saída colorida com less: # Colorize less man pages. export LESS_TERMCAP_md=$'\e[01;34m' export LESS_TERMCAP_us=$'\e[01;33m' export LESS_TERMCAP_so=$'\e[01;44;37m' export LESS_TERMCAP_mb=$'\e[01;31m' export LESS_TERMCAP_mr=$'\e[01;35m' export...

8
Bash globbing e passagem de argumentos

Eu tenho o seguinte script bash simplificado #!/bin/bash files=("$@") if [ "X$files" = "X" ]; then files=$HOME/print/*.pdf; fi for file in "${files[@]}"; do ls "$file"; done Se eu passar argumentos (nomes de arquivos) como parâmetros, esse script imprimirá os nomes de arquivos adequados. Por...

8
Reinstalar aplicativos após uma nova instalação?

Estou no Debian e quero re-particionar minha unidade e reinstalar. Existe uma maneira fácil de restaurar todos os pacotes atualmente instalados após uma nova instalação? Estou pensando em fazer isso fazendo uma lista de aplicativos de backup: #generate list of installed packages dpkg -l | awk '{...